осознал что у Map функция get(...) принимает Object. Это значит, что поиске объекта вовсе не обязательно конструировать ключ, достаточно создать объект любого типа с правильными hashCode() и equals(Object). Практическое применение — лукапы в Map<String, ?>, при которых можно избежать конструирования String'а из char[]
кароч, то что появилось для std::map в C++14 было уже в Java 1.5 (2004 год)
@komar я пытался изучить окамл, но не придумал ни одной наколеночной задачи, которую бы хотелось реализовывать на нём, а не на джаве
@komar окамл?