[1] https://harelang.org/blog/2021-03-26-high-level-data-structu...
Lots of C++ compilers shipped STL implementations with atrocious performance (and outright bugs) for like a decade. It's not like putting something in the standard library guarantees correctness or performance.
The entire issue is that the language does not allow for that: like Go (pre 1.18) it does not have userland generics. And unlike Go it doesn't even have a builtin hashmap, only arrays and slices.
Edit: plus, realistically now, the article's criticism revolves around shortcomings of a particular implementation of a hash table. If Hare had generics, and a hash map implementation in the standard library, and that implementation used the same hashing algorithm and made the same assumptions (e.g. no key collisions), all that criticism would still hold. You can find poor implementations of any data structure in any language.
So if I need a hash table to map inodes to strings and another to map strings to IP addresses, I'll need to create that anew each time.
That means either writing a lot of code twice, or relying on manual code generation (which sucks for many reasons).
> Recall that Hare is designed to be similar to C in terms of scope and goals. C also provides no general-purpose hash map, and little by way of other data structures (though some attempts exist, none of them good).
So you're stuck using a crappy general-purpose hash map that you have to convince your linux distribution package managers to maintain.