Sturcture and Interpretation of Computer Programs - Abelson,Harold & Sussman,Gerald Jay (The MIT Press, London)