>> > why is ((lambda...)...) deprecated? Is it because of this kind of inconsistency? (funcall (lambda () (message "hi"))) ; Prints "hi" (funcall (progn (lambda () (message "hi")))) ; Prints "hi" ((lambda () (message "hi"))) ; Prints "hi" ((progn (lambda () (message "hi")))) ; Lisp error: (invalid-function (progn (lambda nil (message "hi")))) One would hope either that the last two both work or both not work.