Clojure имеет переходные аналоги для некоторых своих постоянных структур данных, векторов, карт и множеств. Для векторов существуют функции pop!
и conj!
, аналогичные pop
и conj
для постоянных векторов, но не peek!
.
Есть ли техническая причина, из-за которой невозможна эффективная реализация peek!
? Или это просто не нужно в большинстве случаев использования для переходных векторов? Я всегда могу сделать
(defn peek! [tvec] (get tvec (dec (count tvec))))
Но кажется странным, что нет встроенного решения.