10.07.2015 Views

LISP I Programmer's Manual - Software Preservation Group

LISP I Programmer's Manual - Software Preservation Group

LISP I Programmer's Manual - Software Preservation Group

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

There is a twofold reason for departing from the usualmathematical practice of using single letters for atomic symbols.First, computer programs frequently require hundreds ofdistinguishable symbols that must be formed from the 47 charactersthat are printable by the IBM 704 computer, Second, itis convenient to allow English words and phrases to stand foratomic entities for mnemonic reasons, The symbols are atomicin the sense that any substructure they may have as sequencesof characters is ignored, We assume only that different symbolscan be distinguished,S-expressions are then defined as follows:1. Atomic symbols are S-expressions,2. If el and e2 are S-expressions, so is (elce2)Examples of S-expressions areAB(A0B)( (AB-C) OD)An S-expression is then simply an ordered pair, the termsof which may be atomic symbols or simpler S-expressions~ Wecan represent a list of arbitrary length in terms of S-expressionsas follows, The listis represented by the S-expressionHere NIL is an atomic symbol used to terminate lists,Since many of the symbolic expressions with which we dealare conveniently expressed as lists, we shall introduce a listnotation to abbreviate certain S-expressionso We have1, (m) stands for (m0N1~),2. (mlyo9mn) stands for (mlo( ...( NIL) ...)).3. (m,, . . . ,mnox) stands for (mi. a (mn0x) a ) )

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!