코딩조무사
2017. 10. 21. 10:24
원래 lisp형태처럼 괄호가 있는 언어는 별로 선호하지 않았지만
clojure의 필요성에 따라서 배우게 되었다
기본적인 C 스타일 문법과는 약간 다른데
이렇게 작성했던 구문을
| for(int i = 0; i < 5; i++) { printf("%d\n", i); } | cs |
클로저에서는 이렇게 작성할수 있다
| (loop [x 0] (if (< x 5) (do (println x) (recur (inc x))))) | cs |
재귀적으로 생각해본다면 이렇게도 가능
| (defn p [x] (println x) (if (< x 5) (p (+ x 1)))) (p 0) | cs |