Shop now Shop now Shop now See more Shop all Amazon Fashion Cloud Drive Photos Shop now Learn More Learn more Shop now Learn more Shop Fire Shop Kindle Listen with Prime Learn more Shop Men's Shop Women's

Buy Used
Used - Good See details
Price: £32.19

Have one to sell? Sell yours here
Tell the Publisher!
I’d like to read this book on Kindle

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

Structure and Interpretation of Computer Programs (Second Edition) [Hardcover]

Harold Abelson , Gerald Jay Sussman , Alan J. Perlis , Julie Sussman
3.3 out of 5 stars  See all reviews (37 customer reviews)

Available from these sellers.

‹  Return to Product Overview

Table of Contents

Part 1 Building abstractions with procedures: the elements of programming; expressions; naming and the environment; evaluating combinations; compound procedures; the substitution model for procedure application; conditional expressions and predicates; example: square roots by Newton's method; procedures as black-box abstractions; procedure and the processes they generate; linear recursion and iteration; tree recursion; orders of growth; exponentiation; greatest common divisors; example: testing primality; formulating abstractions with higher-order procedures; procedures as arguments; constructing procedures using Lambda; procedures as general methods; procedures as returned values. Part 2 Building abstractions with data: introduction to data abstraction; example: arithmetic operations for rational numbers; abstraction barriers; what is meant by data? extended exercise: interval arithmetic; hierarchical data and the closure property; representing sequences; hierarchical structures; sequences as conventional interfaces; example: a picture language; symbolic data; quotation; example: symbolic differentiation; example: representing sets; example: Huffman encoding trees; multiple representations for abstract data; representations for complex numbers; tagged data; data-directed programming and additivity; systems with generic operations; generic arithmetic operations; combining data of different types; example: symbolic algebra. Part 3 Modularity, objects, and state: assignment and local state; local state variables; the benefits of introducing assignment; the costs of introducing assignment; the environment model of evaluation; the rules for evaluation; applying simple procedures; frames as the repository of local state; internal definitions; modelling with mutable data; mutable list structure; representing queues; representing tables; a simulator for digital circuits; propagation of constraints; concurrency: time is of the essence; the nature of time in concurrent systems; mechanisms for controlling concurrency; streams; streams are delayed lists; infinite streams; exploiting the stream paradigm; streams and delayed evaluation; modularity of functional programs and modularity of objects. Part 4 Metalinguistic abstraction: the metacircular evaluator; the core of the evaluator; representing expressions; evaluator data structures; running the evaluator as a program; data as programs; internal definitions; separating syntactic analysis from execution; variations on a scheme - lazy evaluation; normal order and applicative order; an interpreter with lazy evaluation; streams as lazy lists. (Part contents).

‹  Return to Product Overview