2013-09-15 5 views
1

Я пытаюсь изучить clojure, но, исходя из OO, простые вещи выглядят как миссия невозможной. Например, как написать функцию, которая будет принимать консольный ввод и выводить его в консоль?clojure: как связать вход консоли с переменной?

Я пробую что-то вроде этого, но это не сработает.

(ns ClojureTest2.core) 

,(defn fun [] 
    (let [input (read-line)]) 
    (println input) 
) 

(fun []) 

P.S. Я работаю с затмением - против часовой стрелки

+0

Вы, вероятно, не хотите слышать это, но ... канаву затмения. Если вы потратите время на изучение emacs вместе с nrepl и paredit, ваша жизнь станет бесконечно более простой. Я предлагаю вам начать с emacs live, пока вы не будете готовы создать свой собственный config - https://github.com/overtone/emacs -live – PTBG

ответ

1

Попробуйте это:

(ns ClojureTest2.core) 

(defn fun [] 
    (let [input (read-line)] 
    (println input))) 

(fun) 

Обратите внимание, как println заключенные в let заявления. input будет существовать только в заявлении let. Кроме того, пустой список параметров fun означает, что вам не нужно указывать какие-либо аргументы для его вызова.

Смежные вопросы