3.4 letrec, let, and let*
(letrec ([id expr-for-let] ...) expr) |
A expr-for-let can be either an expression for a constant definition or a lambda form for a function definition.
(let ([id expr-for-let] ...) expr) |
Like letrec, but the defined ids can be used only in
the last expr, not the expr-for-lets next to the
ids.
(let* ([id expr-for-let] ...) expr) |