How to design programs : an introduction to programming and computing / Matthias Felleisen ... [et al.].
Material type:
TextPublication details: Cambridge, Mass. : MIT Press, c2001.Description: xxx, 693 p. : ill. ; 24 cmISBN: - 0262062186
- 9780262062183
- QA 76.6 .H697 2001
| Item type | Current library | Call number | Status | Barcode | |
|---|---|---|---|---|---|
Book
|
Storms Research Center Main Collection | QA 76.6 .H697 2001 (Browse shelf(Opens below)) | Available | 98639835 |
Includes bibliographical references and index.
Processing simple forms of data. Students, teachers, and computers -- Numbers, expressions, simple programs -- Programs are function plus variable definitions -- Conditional expressions and functions -- Symbolic information -- Compound data, part 1: structures -- The varieties of data -- Syntax and semantics -- Processing arbitrarily large data. Compound data, part 2: lists -- More on processing lists -- Natural numbers -- Composing functions, revisited again -- List abbreviations -- More on processing arbitrarily large data. More self-referential data definitions -- Mutually referential data definitions -- Development through iterative refinement -- Processing two complex pieces of data -- Local definitions and lexical scope -- Abstracting designs. Similarities in definitions -- Functions are values -- Designing abstractions from examples -- Designing abstractions with first-class functions -- Mathematical examples -- Defining functions on the fly -- Generative recursion. A new form of recursion -- Designing algorithms -- Variations on a theme -- Algorithms that backtrack -- The cost of computing and vectors -- Accumulating knowledge. The loss of knowledge -- Designing accumulator-style functions -- More uses of accumulation -- The nature of inexact numbers -- Changing the state of variables. Memory for functions -- Assignment to variables -- Designing functions with memory -- Examples of memory usage -- The final syntax and semantics -- Changing compound values. Encapsulation -- Mutable structures -- Designing functions that change structures -- Equality -- Changing structures, vectors, and objects.
There are no comments on this title.