In my opinion, the verification of the implementation should be separate from the task of translating that implementation to bytecode. This leaves you with a simple compiler that is easy to implement but still with a strong verifier that is harder to implement, but optional.
That's a very unkind assumption of my argument.
I ask that you read https://news.ycombinator.com/item?id=45314707 to hopefully better understand my actual argument. It doesn't involve calling anybody stupid or lazy.
Sure its not impossible for C to get that, but at the same time, they are trying to write git not fix C.
* My point is, that hash maps and data structures like that are clearly not the priority of C or they would **exist by now.
** by exist I mean either in C standard, or a at least a community consensus about which one you pick, unless you need something specific.
See: https://news.ycombinator.com/item?id=45120171
Nobody needs to change a language standard for 9 lines of code. When you really want to use a hash map, its likely that you care about performance, so you don't want to use a generic implementation anyway.
> or a at least a community consensus about which one you pick
There is a hash table API in POSIX:
GNU libc: https://sourceware.org/glibc/manual/latest/html_node/Hash-Search-Function.html
Linux hsearch(3): https://man7.org/linux/man-pages/man3/hsearch.3.html
hsearch(3posix): https://www.man7.org/linux/man-pages/man3/hcreate.3p.html