The Tower of
A Brief Introduction to LISP
Emphasis is on application
- Sequencing is defined in terms of nesting of function references, and by the order of evaluating
the arguments of a function before evaluating the function itself (eager
evaluation). The "main" program is a "one-liner".
Programs consist of function
definitions and function applications.
Functions defined in the language contain no "side effects" (i.e. state changes).
A very mathematical view
of programming. Variable identifers can exist as function parameters but do not change value. Programs are readily provable! Sometimes called "variableless programming".
Some languages use lazy
evaluation: evaluate a parameter only when needed.
Repetition is by recursion,
Does not match any particular
view of the hardware.
Our examples: LISP,
Last Updated 2001/10/26
L.Heath, 2000, upgraded by J.A.N. Lee, 2000-2001.