Clojure # = макрос читателя
Я просто "открыл" макрос читателя #=
из сообщения в Stackoverflow
и это решает проблему. Насколько вероятно, что этот макрос читателя станет
официальная (документированная) часть языка? Как насчет устаревших или
изменилось поведение?
Макрос чтения #=
вызывает следующее s-выражение, которое может быть оценено читателем Lisp (перед расширением макроса).
Ответы
Ответ 1
Он используется основным языком, когда что-то напечатано с помощью * print-dup * true, поэтому я бы сделал ставку на то, что он останется. Не знаю, почему это не документировано.
user=> (binding [*print-dup* true] (prn {:foo 1 :bar 2}))
#=(clojure.lang.PersistentArrayMap/create {:foo 1, :bar 2})
nil
Ответ 2
Он не задокументирован, потому что он может уйти/заменить другим. Я бы не рекомендовал использовать его в ваших программах.