Read Structure and Interpretation of Computer Programs Online
Authors: Harold Abelson and Gerald Jay Sussman with Julie Sussman
Darlington, John e
data
,
[2]
abstract
,
see also
data abstraction
abstract models for
algebraic specification for
compound
concrete representation of
hierarchical
,
[2]
list-structured
meaning of
mutable,
see
mutable data objects
numerical
procedural representation of
as program
shared
symbolic
tagged
,
[2]
data abstraction
,
[2]
,
[3]
,
[4]
,
[5]
,
see also
metacircular evaluator
for queue
data base
data-directed programming and
indexing
,
[2]
Insatiable Enterprises personnel
logic programming and
Microshaft personnel
as set of records
data paths for register machine
data-path diagram
data types
in Lisp
in strongly typed languages
data-directed programming
,
[2]
case analysis vs.
in metacircular evaluator
in query interpreter
data-directed recursion
deadlock
avoidance
recovery
debug
decimal point in numbers
declarative vs. imperative knowledge
,
[2]
logic programming and
,
[2]
nondeterministic computing and
decode
decomposition of program into parts
deep binding
deep-reverse
deferred operations
define
(special form)
with dotted-tail notation
environment model of
lambda
vs.
for procedures
,
[2]
syntactic sugar
value of
why a special form
define
(special form)
internal,
see
internal definition
define-variable!
,
[2]
definite integral
estimated with Monte Carlo simulation
,
[2]
definition,
see
define
; internal definition
definition-value
definition-variable
definition?
deKleer, Johan
,
[2]
delay
(special form)
explicit
explicit vs. automatic
implementation using
lambda
lazy evaluation and
memoized
,
[2]
why a special form
delay, in digital circuit
delay-it
delayed argument
delayed evaluation
,
[2]
assignment and
explicit vs. automatic
in lazy evaluator
normal-order evaluation and
printing and
streams and
delayed object
delete-queue!
,
[2]
denom
,
[2]
axiom for
reducing to lowest terms
dense polynomial
dependency-directed backtracking
deposit
, with external serializer
deposit
message for bank account
depth-first search
deque
deriv
(numerical)
deriv
(symbolic)
data-directed
derivative of a function
derived expressions in evaluator
adding to explicit-control evaluator
design, stratified
differential equation
,
see also
solve
second-order
,
[2]
differentiation
numerical
rules for
,
[2]
symbolic
,
[2]
diffusion, simulation of
digital signal
digital-circuit simulation
agenda
agenda implementation
primitive function boxes
representing wires
sample simulation
Dijkstra, Edsger Wybe
Dinesman, Howard P.
Diophantus's
Arithmetic
, Fermat's copy of
disjoin
dispatching
comparing different styles
on type
,
see also
data-directed programming
display
(primitive procedure)
,
[2]
display-line
display-stream
distinct?
div
(generic)
div-complex
div-interval
division by zero
div-poly
div-rat
div-series
div-terms
divides?
divisible?
division of integers
dog, perfectly rational, behavior of
DOS/Windows
dot-product
dotted-tail notation
for procedure parameters
,
[2]
in query pattern
,
[2]
in query-language rule
read
and
Doyle, Jon
draw-line
driver loop
in explicit-control evaluator
in lazy evaluator
in metacircular evaluator
in nondeterministic evaluator
,
[2]
in query interpreter
,
[2]
driver-loop
for lazy evaluator
for metacircular evaluator
for nondeterministic evaluator
as continued fraction
as solution to differential equation
e
x
, power series for
Earth, measuring circumference of
edge1-frame
edge2-frame
efficiency,
see also
order of growth,
see also
order of growth
of compilation
of data-base access
of evaluation
of Lisp
of query processing
of tree-recursive process
EIEIO
eight-queens puzzle
,
[2]
electrical circuits, modeled with streams
,
[2]
element-of-set?
binary-tree representation
ordered-list representation
unordered-list representation
else
(special symbol in
cond
)
embedded language, language design using
empty list
denoted as
'()
recognizing with
null?
empty stream
empty-agenda?
,
[2]
empty-arglist
empty-instruction-sequence
empty-queue?
,
[2]
empty-termlist?
,
[2]
encapsulated name
enclosing environment
enclosing-environment
encode
end-of-list marker
end-segment
,
[2]
end-with-linkage
engineering vs. mathematics
entry
enumerate-interval
enumerate-tree
enumerator
env
register
environment
,
[2]
compile-time,
see
compile-time environment
as context for evaluation
enclosing
global,
see
global environment
lexical scoping and
in query interpreter
renaming vs.
environment model of evaluation
,
[2]
environment structure
internal definitions
local state
message passing
metacircular evaluator and
procedure-application example
rules for evaluation
tail recursion and
eq?
(primitive procedure)
for arbitrary objects
as equality of pointers
,
[2]
implementation for symbols
numerical equality and
equ?
(generic predicate)
equal-rat?
equal?
equality
in generic arithmetic system
of lists
of numbers
,
[2]
,
[3]
referential transparency and
of symbols
equation, solving,
see
half-interval method; Newton's method;
solve
Eratosthenes
error
(primitive procedure)
error handling
in compiled code
in explicit-control evaluator
,
[2]
Escher, Maurits Cornelis
estimate-integral
estimate-pi
,
[2]
Euclid's Algorithm
,
[2]
,
see also
greatest common divisor
order of growth
for polynomials
Euclid's
Elements
Euclid's proof of infinite number of primes
Euclidean ring
Euler, Leonhard
proof of Fermat's Little Theorem
series accelerator
euler-transform
ev-application
ev-assignment
ev-begin
ev-definition
ev-if
ev-lambda
ev-quoted
ev-self-eval
ev-sequence
with tail recursion
without tail recursion
ev-variable
eval
(lazy)
eval
(metacircular)
,
[2]
analyzing version
data-directed
primitive
eval
vs.
eval
(primitive procedure)
MIT Scheme
used in query interpreter
eval-assignment
eval-definition
eval-dispatch
eval-if
(lazy)
eval-if
(metacircular)
eval-sequence
evaluation
applicative-order,
see
applicative-order evaluation
delayed,
see
delayed evaluation
environment model of,
see
environment model of evaluation
models of
normal-order,
see
normal-order evaluation
of a combination
of
and
of
cond
of
if
of
or
of primitive expressions
of special forms
order of subexpression evaluation,
see
order of evaluation
substitution model of,
see
substitution model of procedure application
evaluator
,
see also
interpreter
as abstract machine
metacircular
as universal machine
evaluators,
see
metacircular evaluator; analyzing evaluator; lazy evaluator; nondeterministic evaluator; query interpreter; explicit-control evaluator
even-fibs
,
[2]
even?
evening star,
see
Venus
event-driven simulation
evlis tail recursion
exact integer
exchange
exclamation point in names
execute
execute-application
metacircular
nondeterministic
execution procedure
in analyzing evaluator
in nondeterministic evaluator
,
[2]
,
[3]
in register-machine simulator
,
[2]
exp
register
expand-clauses
explicit-control evaluator for Scheme
assignments
combinations
compound procedures
conditionals
controller
data paths
definitions
derived expressions
driver loop
error handling
,
[2]
expressions with no subexpressions to evaluate
as machine-language program
machine model
modified for compiled code
monitoring performance (stack use)
normal-order evaluation
operand evaluation
operations
optimizations (additional)
primitive procedures
procedure application
registers
running
sequences of expressions
special forms (additional)
,
[2]
stack usage
tail recursion
,
[2]
,
[3]
as universal machine
expmod
,
[2]
,
[3]
exponential growth
of tree-recursive Fibonacci-number computation
exponentiation
modulo
n
expression,
see also
compound expression; primitive expression
algebraic,
see
algebraic expressions
self-evaluating
symbolic
,
see also
symbol(s)
expression-oriented vs. imperative programming style
expt
linear iterative version
linear recursive version
register machine for
extend-environment
,
[2]
extend-if-consistent
extend-if-possible
external-entry
extract-labels
,
[2]