Интерполяция строки

Clojure:
Интерполяция строки

Как это сделать:

;; Основы с `str` и `format`
(def name "Мир")
(str "Привет, " name "!")  ; => "Привет, Мир!"

;; Использование `format`, аналогично форматированию в стиле printf
(format "До свидания, %s!" name)  ; => "До свидания, Мир!"

;; В Clojure нет встроенной интерполяции строк, как в других языках,
;; но мы можем проявить творчество с `str` и `format`.

Подробнее:

Clojure - немного аскет: нет встроенной интерполяции строк. Однако, str и format являются основными инструментами для динамических строк. История происхождения? Этос простоты Clojure. Он доверяет нам самим заниматься построением строк.

В качестве альтернативы представлен мир шаблонов: clostache (реализация Mustache для Clojure) или hiccup для контекстов HTML. Они пригодятся, когда str и format кажутся слишком примитивными.

Внутри, format использует String.format из Java, что демонстрирует суперспособность Clojure к взаимодействию с Java. Так что, хотя вы не получаете сладости, у вас есть мускулы Java, когда они вам нужны.

Смотрите также: