defmacro
macroexpand 일어나는 과정을 확인하는 데 도움이 되는 도구
(defmacro if-not [condition expression] (list 'if condition nil expression))
(defmacro if-not ([condition expression] (list 'if condition nil expression)) ([condition expression2 expression3] (list 'if condition expression3 expression)))
when
(defmacro when (1) "Evaluates test. If logical true, evaluates body in an implicit do." {:added "1.0"} (2) [test & body] (3) (list 'if test (cons 'do body))) (4)
- 언어의 어느 버전에 추가되었는지를 나타내는 맵이다