Cargando…

How to design programs : an introduction to programming and computing /

Detalles Bibliográficos
Otros Autores: Felleisen, Matthias
Formato: Libro
Lenguaje:English
Publicado: Cambridge, Mass. : MIT Press, c2001.
Materias:
Acceso en línea:Tabla de contenido
Tabla de Contenidos:
  • 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.