Hal Abelson gives an introduction to the "Structure and Interpretation of Computer Programs" lecture with an explanation of Declarative and Imperative programming. Excerpted and adapted from Hal Abelson, "Introductory Undergraduate Subjects in Computer Science":- 6.001 differs from typical introductory computer science subjects in using Scheme (a block-structured dialect of Lisp) rather than