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.

2. Recursive Functions of Symbolic Expressions 12The <strong>LISP</strong> I programming system is based on a class of functionsof symbolic expressions which we now proceed to describe.2.1 Functions and Function DefinitionsWe shall need a number of mathematical ideas and notationsconcerning functions in general. Most of the ideas are wellknown but the notion of conditional expression is believed tobe new, and the use of conditional expressions permits functionsto be defined recursively in a new and convenient way.a. Partial FunctionsA partial function is a function that is defined only onpart of its domain. Partial functions necessarily arise whenfunctions are defined by computations because for some valuesof the arguments, the computation defining the value of thefunction may not terminate. However, some of our elementaryfunctions w i l l be defined as partial functions,1 This chapter is taken from the Quarterly Progress Report No. 53,Research Laboratory of Electronics, M.I.T., April 15, 1959:"~ecursive Functions of Symbolic Expressions and Their Computationby Machine" by John McCarthy,2An article on the same subject by McCarthy is to appear inthe April 1960 issue of the Communications of the Associationfor Computing Machinery.

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

Saved successfully!

Ooh no, something went wrong!