What is the difference between a map and a dictionary?
I know a map is a data structure that maps keys to values. Isn't a dictionary the same? What is the difference between a map and a dictionary 1 ? 1. I am not asking for how they are defined in language X or Y (which seems to be what generally people are asking here on SO), I want to know what is their difference in theory. Two terms for the same thing: "Map" is used by Java, C++ "Dictionary" is used by .Net, Python "Associative array" is used by PHP "Map" is the correct mathematical term, but it is avoided because it has a separate meaning in functional programming . Some languages use still