Let Example
(let ((x '(1 2))) (car x))
1. Evaluating '(1 2) yields a pointer to a list in memory.
2. Extend the environment with a binding for x.
3. Evaluate the body of the let in the new environment.
x evaluates to a pointer to the list, so (car x) evaluates to the first element, namely 1.
4. Restore the old environment.
5. Return the value we got: 1