One thing I think is missing from the C and C++ standard libraries
-
After all these years and additions to the languages you'd think they'd have provided builtins to solve one of the major things many non-trivial projects wind up needing: Custom heaps. Nothing terribly fancy, just fast lookaside lists behind and API and such to manage heap allocations and frees, but on subheaps. Maybe even some hooks in it so you can allocate your memory from the hardware your own way, IDK. The STL is so irresponsible by default that it's a non-starter on embedded. You can't just alloc every time you need a functor. It's expensive, and the heap frag struggle is real. If you had subheaps you could just wrap one with custom allocators, allocate a block up front, and then let the STL allocate your functors from that. Sure you can roll your own, and there are probably 100 implementations on github, but it feels like it should be intrinsic to the runtimes.
Check out my IoT graphics library here: https://honeythecodewitch.com/gfx And my IoT UI/User Experience library here: https://honeythecodewitch.com/uix