#### 7.2.69 let

`(let ARGUMENTS EXPR1 ... EXPRN)`
  Generate a lambda expression from EXRP1 ... EXPRN, with the argument bindings described by ARGUMENTS. ARGUMENTS is a list of symbols (bound to `nil` by default) or lists of the form `(ARG VALUE)` where ARG is a symbol and not evaluated and VALUE is an S-expression which is first evaluated, then its value is bound to ARG. The entire expression evaluates to the value of EXPRN, the last expression in the body of the statement. The argument list must be present, but can be empty; in the latter case the `(let () ...)` statement is equivalent to a `(progn ...)`. See `(lambda ...)`. See `(defun ...)`. See `(setq ...)`.