zkusím...
mapa ... abstraktní datová struktura
Vlastně jedinou operací, kterou by mapa měla umět, je nalézt prvek podle jeho klíče. A klíčem obecně může být cokoli, nejenom celé číslo.
Mapa je abstraktním datovým typem, ale její konkrétní implementace mají i další vlastnosti, třeba to, jak se vrací dvojice klíč:hodnota při sekvenčním procházení mapou. O tom je vlastně celý článek, že se to dá dělat různě pro různé potřeby.
V některých jazycích se mapám říká slovníky, asociativní pole, hashe (heše). Ale heše neříkej na pohovoru :-) protože to je obecně špatně a asi to zavedl Perl (ten vůbec spoustu věcí v IT minimálně zkonil). Lepší by bylo říkat slovník (tak to má python), ale to zase lidem asociuje, že je to nějak setříděné (to python tedy umí, ale až od nedávna). Třeba java taky používá mapa (https://docs.oracle.com/javase/7/docs/api/java/util/Map.html). Někde jsem slyšel i použití "tabulka", ale to je dost mimo.
V Clojure, tedy pokud to chápu, jsou mapy neměnitelné, takže jejich popis je takto jednoduchý. Není nutné popisovat, jak se vkládají nebo mažou nebo přepisují prvky protože to vlastně nejde a je to tak správně :-)
PS: ale v Clojure nedělám, jen si o něm něco čtu a dívám se na videa od Riche.
Někde jsem slyšel i použití "tabulka", ale to je dost mimo
Nie je to mimo. Mapa je tabuľka s dvomi stĺpcami: kľúč a hodnota. Pozri Dispatch Table, Conversion Table.
Mapu je možné chápať aj ako lookup tabuľku, t.j. implementáciu referenčne transparentnej funkcie. Pozri memoize, kde mem
je definované ako (atomická) mapa: (let [mem (atom {})] ...)
No a do tretice, každá funkcia je reláciou, takže na mapu sa dá nazerať aj ako na reláciu.