> (car #(fubAr quux)) => 'lambda > > would be *very* surprising to most users. That kind of computation is > what functions are for. Taking the car of a function is not valid anyway. Byte compile: (defvar myfunc (lambda ())) Evaluate: (car myfunc) Error: Debugger entered--Lisp error: (wrong-type-argument listp #[nil "\300\207" [nil] 1]) car(#[nil "\300\207" [nil] 1]) eval((car (byte-compile (function (lambda nil)))) nil) eval-last-sexp-1(nil) eval-last-sexp(nil) call-interactively(eval-last-sexp nil nil) command-execute(eval-last-sexp) Or in the *scratch* buffer: (setq lexical-binding t) (car (lambda ())) ; => 'closure