Except this (attempted) mask mandate ban was for kids - i.e. those who are often too young to receive a vaccine.
Yes, our federal government absolutely failed when it comes to vaccine supply. It is our state governments that have instituted lockdowns, because of this failure on behalf of the federal government, to squash cases and stop our hospital system from reaching breaking point.
Yes, our federal government screwed up, and I don't know anyone who doesn't agree with that point, but given that, and given the outcomes America experienced before vaccination was prevalent, it is the height of hubris and arrogance to suggest that you and the rest of the Western world (this "data" being pulled from where, exactly?) is "horrified at us".
But please, continue looking on in horror at us from (I'm assuming) America. Your post is a wonderful mix of condescending tone and factual inaccuracy, with the added cherry-on-top that you have absolutely moronic states like Florida "fighting for their freedoms" by banning mask mandates. This would be infuriating if it wasn't so painfully stupid.
That's because modules and namespaces are the same thing in languages like Python, whereas they are separated in C++. The code in the imported module will go into whatever namespace it is in within that module, not the global namespace.
Modules have nothing to do with shipping libraries (or dependency management), they are purely about encapsulation of interface and (API) implementation.
If by "reload" you mean "drop in an updated shared library and let the runtime loader do its job", I suppose so.
Yes, it only applies if you don't make any API (and ABI) changes, but that's what major, minor, patch versioning is for, and stable projects can go a long way on minor and patch versions...
Depending on what you required, it can still be significantly faster than std::map. Any tree-based data structure is going to play havoc with cache. Also, it will perform an allocation for every single node inserted, which can become rather expensive (unless you're using some customized allocator for this).
Honestly, sorted vectors can often be a good replacement, depending on the workload, if you must have ordered data (this is what boost flat_map uses). All 3 (map, unordered_map, sorted vector) can have their uses, depending on what you are doing with the data.
If you need a better performing hash map, there's always Abseil as well.
I remember this being in the context of video games, and from some time ago (so things may have changed with Steam sales and the like), but it said that something like 85% of sales occur in the first two weeks. Thus the DRM was there to (hopefully) hold out for as much of that initial time as possible.
Anyway, anecdotal story, take with (many) grains of salt.
Correctness defined as "this produces the right answer" vs correctness defined as the above with the addition of "this does not leak information / is not highly vulnerable to side-channel attacks" are very different things, and only one of those definitions is actually useful for cryptography.
Writing it yourself for the first time, or just copying some code off the internet, is going to have a vanishingly small chance of being actually secure.
I mean, you really are a special case - I have only lightly dabbled in Rust, but I immediately recognize your name because of the work you've done in the Rust community.
This doesn't take into account the alignment of the type though (you'd want to use std::aligned_storage<sizeof(T), alignof(T)>), but that requires knowing enough about T to be able to use sizeof() and alignof(), which means no incomplete types, bringing us back to where we started.
This could only ever be doable with extremely simple architectures anyway. Off the top of my head, add in just one of branch prediction, micro-op fusion, out-of-order execution, pipelines and pipeline stalls, or cache misses, and this becomes impossible. Of course, this assumes you even know which CPU you are targeting its specific instruction latencies.
That's already an extremely niche set of processors. Further, the number of bits of code you're likely to care about this kind of extremely precise timing for, you'll either examine the emitted assembly, or just hand-write the ASM yourself.
It seems like a huge amount of effort for an extremely niche scenario. Remember, the ISA is still just an abstraction, after all.
Sure, you can pass by pointer instead of reference, but the post also mentioned that they didn't use the STL (hence no std::vector) and I'm curious if that means they used a replacement library or something else.
Most compilers have extensions that will allow you to do this (__builtin_expect and so on).
> in-lining can't be forced when you know it gives better performance
Again, most compilers have this, not just GCC, e.g. __forceinline.
> the compiler has a lot of trouble knowing when lines of code are independent and can be done in parallel (b/c const =/= immutable)
This is true, as aliasing is a real issue. The hardware itself has some say over this anyway, dependent on its instruction scheduling and OOE capabilities.
What you don't mention, however, is the fact that almost no other languages offer any of these, let alone all of them. Rust may be the exception here, although some of this is still in the words (SIMD, I'm not sure about the status of likely/unlikely intrinsics).
For GPU programming, if you're using CUDA, you're almost certainly using C or C++, or calling something that wraps C/C++ code. Not everything is suited to GPU processing anyway, there's still a lot of code that's not moving off the CPU any time soon that needs to be performant.
The second is absolutely an advantage of references, and other than having to use (if I'm being honest, legacy and/or bad) interfaces, there is absolutely not a downside in this regard.
The first can be a legitimate complaint, although I find it's rarely an issue in practice.
Out of curiosity, what do you use? I hope it isn't back to raw pointers and size_t offsets for lengths. What do you do if you want to pass a container of ... anything around? What's the replacement for:
Yes, our federal government absolutely failed when it comes to vaccine supply. It is our state governments that have instituted lockdowns, because of this failure on behalf of the federal government, to squash cases and stop our hospital system from reaching breaking point.
Yes, our federal government screwed up, and I don't know anyone who doesn't agree with that point, but given that, and given the outcomes America experienced before vaccination was prevalent, it is the height of hubris and arrogance to suggest that you and the rest of the Western world (this "data" being pulled from where, exactly?) is "horrified at us".