Как вы гарантируете, что список ассоциаций поддерживает уникальные ключи в 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)) в результате. Я также знаю, что могу использовать для этого хеш-таблицы, но мне было любопытно, как это сделать идиоматически со списком ассоциаций.

Ответы на вопрос(2)

Ваш ответ на вопрос