Dima
std::allocator
Ludovic 'Archivist'
It is generally linked optionally
Just like std::filesystem
Dima
std::*
Ludovic 'Archivist'
std::allocator
This also have a very nice use, mainly for allocating in files or other structures
BinaryByter
std::allocator
allocztor is the best thing that happened to cpp
Ludovic 'Archivist'
Ariana
this is the best msg i’ve read in my life
Ariana
Rose is actually a neural network
Ariana
Its currently in training phase, just in case it spews nonsense
Ariana
would be ready soon
BinaryByter
We dont train it in indian msgs
Dima
trained by indian messages lmao!
Dima
the most retarded neural network ever
Anonymous
/
mark
Thats a stupid question
😂😂😂😂
mark
Same as the person who said it
klimi
😂😂😂😂
That's a stupid reaction
psy4
He is actually not exactly wrong
Would you like to hear more ? Then, I'd go ahead and say recent changes to the STL are the worst parts of modern C++. For example std::regex supports 6 distinct syntaxes, the PRNG stuff is massively over-engineered, the "extensions for parallelism" add complexity without giving enough knobs for any real perf improvement. Meanwhile there's gaping holes like UTF-8 support. It's a sad sad state. 😢
psy4
mem_func_ptr aside
My main issue here is combining multiple libraries each using its own abstractions. For example, since the standard library does not have a Matrix class suitable for numerical applications (or maybe it does today...) using multiple libraries each with its own Matrix class is difficult. Multiple libraries are needed since one library may not contain all numerical algorithms one may require for a given app.
Ludovic 'Archivist'
Also about 98% of the bloat is blown away at link time
Ludovic 'Archivist'
I cannot shrug that one off
psy4
But all of these are never mandatory and are separated
The problem is there's no easy to use sensible defaults, just a confusing bunch of options with a bunch of apparently easy but subtely wrong ways to use it. Having the power is useful, for instance, I would just like a rand() as a sane option(or better a randrange()) which actually works instead of nitpicking stuffs.
Ludovic 'Archivist'
int rand() {return 4;} is a valid implementation
psy4
forget rand let's say stdlib lacking common operations like proper database connections or say, efficient JSON parsing
Ludovic 'Archivist'
forget rand let's say stdlib lacking common operations like proper database connections or say, efficient JSON parsing
Well, this is imho pretty normal for the database part, I agree for the JSON part tho but add that and people yell it is bloat
psy4
Sometimes I wonder, C++ shouldn't have had a standard lib at all
Ludovic 'Archivist'
Sometimes I wonder, C++ shouldn't have had a standard lib at all
It should just have the freestanding implementation imho
psy4
yeah ,for me basic leaf modules would suffice
Ludovic 'Archivist'
yeah ,for me basic leaf modules would suffice
I think the worst feature of the stdlib is still the locale faucets
psy4
I think the worst feature of the stdlib is still the locale faucets
yeah, I'd get rid of those and few more garbage ASAP. At last, we experienced devs or people that need domain specific features would be using our own specialised libraries anyways. 🥂
Ludovic 'Archivist'
It is still very WIPy
psy4
yeah I saw this one
psy4
it's still pretty barebones for me
Ludovic 'Archivist'
Takes time to make shit
Ludovic 'Archivist'
Ludovic 'Archivist'
One thing at a time
psy4
One thing at a time
well, we all have to start somewhere 😁
Ludovic 'Archivist'
well, we all have to start somewhere 😁
Implementation of a CSPRNG was not very very fun
psy4
while I'm migrating our codebase to Rust
Anonymous
Anonymous
hey guys it is returning wrong values
Anonymous
just nan value
Ludovic 'Archivist'
what's next ?
A correct implementation of Chacha that does match the actual test vectors xD
Dima
ching chong
psy4
ching chong
that's racist
Dima
no, these are just words
psy4
imma report you to SJW police
Dima
star jedi wars
psy4
A correct implementation of Chacha that does match the actual test vectors xD
throw in some overengineered pile of code just to initialize mersenne twister 😂
Dima
mersenne twitter
Dima
Imagine being killed by racist words
Dima
Lol.
Ludovic 'Archivist'
psy4
Na, likely won't implement mersenne twister
some love for Monte Carlo methods then ?
Ludovic 'Archivist'
some love for Monte Carlo methods then ?
Arc4random (using a non endian fixed Chacha20)
psy4
regarless, MT is obsolete anyways
Ludovic 'Archivist'
(in fact you can use a chacha8, or 12 if you need more speed)
psy4
who doesn't need speed, VROOM VROOM !!!
Ludovic 'Archivist'
Arc4random (using a non endian fixed Chacha20)
This allows to have both a cryptographically secure PRNG and a non crypto fast one at a template parameter away
psy4
aight, good luck with the implementations 👍
Ludovic 'Archivist'
This part already works actually
psy4
production ready ?
Ludovic 'Archivist'
No, it in my opinion require more testing, which is why I use it regularly and want the code audited by an infosec company
psy4
how many times has it f@#ked up ?
Ludovic 'Archivist'
The moment it will be "production ready" for me will be when it is checked by at least 2 teams
Ludovic 'Archivist'
how many times has it f@#ked up ?
It may always have, hard to tell with a prng
psy4
what does this spit on your side ?🧐
Liam
what does this spit on your side ?🧐
std::vector is a class template, not a class. Hence, compiler will report an error at line 11.