Учебники

Clojure — REPL

REPL (цикл чтения-проверки-печати) — это инструмент для экспериментов с кодом Clojure. Это позволяет вам взаимодействовать с работающей программой и быстро попробовать, если все работает так, как должно. Это делается путем предоставления вам приглашения, где вы можете ввести код. Затем он читает ваш ввод, оценивает его, печатает результат и зацикливается, снова предлагая вам приглашение.

Этот процесс обеспечивает быстрый цикл обратной связи, который невозможен в большинстве других языков.

Начало сессии REPL

Сеанс REPL можно запустить в Лейнингене, введя следующую команду в командной строке.

lein repl

Это запустит следующее окно REPL.

Окно REPL

Затем вы начинаете оценивать команды Clojure в окне REPL по мере необходимости.

Чтобы начать сеанс REPL в Eclipse, щелкните пункт «Меню», выберите «Запуск от имени» → «Clojure Application».

REPL сессия

Это запустит новый сеанс REPL в отдельном окне вместе с выводом на консоль.

REPL Консольный выход

Концептуально, REPL похож на Secure Shell (SSH). Аналогично тому, как вы можете использовать SSH для взаимодействия с удаленным сервером, Clojure REPL позволяет вам взаимодействовать с запущенным процессом Clojure. Эта функция может быть очень мощной, потому что вы даже можете прикрепить REPL к живому производственному приложению и изменять свою программу во время ее работы.

Специальные переменные в REPL

REPL включает в себя некоторые полезные переменные, широко используемой является специальная переменная * 1, * 2 и * 3. Они используются для оценки результатов трех самых последних выражений.

В следующем примере показано, как можно использовать эти переменные.

user => "Hello"
Hello
user => "World"
World
user => (str *2 *1)
HelloWorld

В приведенном выше примере первые две строки отправляются в окно вывода REPL как «Hello» и «World» соответственно. Затем переменные * 2 и * 1 используются для вызова последних 2 оцененных выражений.