Orthogonality in LISP
- Few basic syntax primitives:
- List Access: car, cdr
- List Construction: cons, list
- Predicates: null, equal
- Control Constructs: cond, defun, recursion
Rest of the language is boot-strapped from these
- Few basic semantic rules:
- Everything returns a value!
- Evaluation rule of lists has few exceptions
- Program construction through Function composition