Как вы гарантируете, что список ассоциаций поддерживает уникальные ключи в Emacs?
Учитывая частоту добавления ключей в списки ассоциаций, такие какauto-mode-alist
Я предполагаю, что есть какой-то идиоматический метод для поддержки списков ассоциаций с уникальными ключами, но ему еще не приходилось сталкиваться с этим.
Допустим, я выполняю следующее:
(setq alist '())
(add-to-list 'alist '(a . 1))
(add-to-list 'alist '(a . 2))
(add-to-list 'alist '(b . 3))
После запуска этого, alist содержит((b . 3) (a . 2) (a . 1))
, я вижу этоadd-to-list
может принять необязательныйcompare-fn
поэтому я предполагаю, что есть какой-то метод, который я мог бы пройти, чтобы получить((b . 3) (a . 1))
в результате. Я также знаю, что могу использовать для этого хеш-таблицы, но мне было любопытно, как это сделать идиоматически со списком ассоциаций.