http://letoverlambda.com/index.cl/guest/chap6.html
;; Graham's alambda (defmacro alambda (parms &body body) `(labels ((self ,parms ,@body)) #'self))
;; Graham's aif (defmacro aif (test then &optional else) `(let ((it ,test)) (if it ,then ,else)))
http://stackoverflow.com/questions/23167464/scheme-self-reference-lambda-macro
http://stackoverflow.com/questions/7936024/anonymous-lambdas-directly-referring-to-themselves