'(λ args body)
can be expressed as: ($vau args env body) [2]
Interestingly, because $vau does not evaluate `args` and explicitly recieves a lexical binding, macros are not necessary in Kernel, and hygiene is a simple matter of (eval)ing with the right environment.Arguably then, Kernel is more fundamental than Lisp.
[1]: http://web.cs.wpi.edu/~jshutt/kernel.html
[2]: Manuel Simoni has a short overview of $vau here: http://axisofeval.blogspot.com/2012/03/i-want-to-understand-...