I’m a Linux user since 2001, I saterted with KDE 2.2 or something. I stopped using it in favor of Gnome, XFCE and recently fluxbox over the years.
A few days ago I decided to give it a try again and I have to say I’m impressed. KDE has reached a level of sophistication I had never seen before in any other Linux desktop environment. For me the experience is almost on par with macOS and slightly above windows.
For my own hashmap implementation I followed a wasteful aproach since I’m. It targeting embedded.
I created a structure called a hashmap object. It has two elements: a void pointer and a char pointer. The first one is the data and the second one is the metadata. The metadata is basically a string were the user can put anything, the type of the data, more data, whatever.
Then I preallocate 10s of thousands of hashmap objects. That way users of my hashmap don’t have to think about aollocating and de allocating hashmap nodes, they just insert, delete and search freely. They still have to care about allocating and de allocating they’re own data though.