Structure and Interpretation of Computer Programs - 2nd Edition ...
Harold Abelson & Gerald Jay Sussman