Man… I thought this was going to be a proper rant about using maps where you should be using other things… No, it’s a make sure you type your function inputs rant…
I wasn’t trying to go into typing as much as using structs or objects when working with known data attributes. Sorry that it was a bit misleading.
The original actually went into using trees, sets, heaps, tries, etc., but it felt way too… ranty. After writing all that out, I realized that most of those other cases come up really infrequently, and that my biggest gripe was about not using structs or other pre-defined key container types. I thought it would be better to keep things short and focused.
Maybe I should re-write and publish a data structures edition.
I would like that! Very much!
Dataclass all the things!
As a PHP programmer… I strongly object.
Everything is a map!
My most loved and hated feature in PHP is associated arrays. I’ve seen an associated array that uses 16gb of memory before, it was as beautiful as it was horrifying.
Chances are there’s probably something similar to dictionary in Python in your languages or at least it’s a import/#include away. Although I don’t use general programming languages at all, in my used language (G’MIC), I do something like
dict$var=input
where$var
is a defined variable, and this way I can access input by doing${dict$var}
and that’s similar to Python dictionary. In C++, there’s hash table implementation out there via github. That being said, there are sometimes when you don’t need a hashtable dependent on the hashmap, and sometimes, it’s just as simple as basic mathematics to access data.