У меня есть двоякий вопрос и надеюсь получить совет от экспертов здесь.Создание plist с backticks терпит неудачу в выражении
1) В синтаксическом анализе некоторого кода мне нужно сохранить найденные компоненты для последующего использования. Теперь я считаю, что хранить их как список свойств (изолированный, а не один из строки, содержащей код, так как это мне кажется довольно жестоким, хотя было бы удобно). Это против всех конвенций или разумного способа справиться с этой ситуацией?
2) Я не могу создать список свойств в операторе (let ...)
.
Это работает:
(setq x "BAR")
(setq pl `(bar ,x))
(setq pl (plist-put pl 'foo "FOO"))
(plist-get pl 'foo) ; returns "FOO"
Но это не делает:
(let (pl `(bar ,x))
(setq pl (plist-put pl 'foo "FOO"))
(plist-get pl 'foo))
Emacs жалуется функции аннулируются бар. Очевидно, он пытается оценить (bar ...)
, несмотря на обратную сторону. Зачем?