I was slightly shocked when a Common Lisper first pointed out to me that macros are syntactic. For example, threading macros aren't limited to function composition. (->> "UTC" (current-time-string (current-time)) (lambda ())) This elisp is building a closure!