eintr: How the Interpreter Acts

 
 How the Lisp Interpreter Acts
 -----------------------------
 
 After evaluating an expression, the Lisp interpreter will most likely
 “return” the value that the computer produces by carrying out the
 instructions it found in the function definition, or perhaps it will
 give up on that function and produce an error message.  (The interpreter
 may also find itself tossed, so to speak, to a different function or it
 may attempt to repeat continually what it is doing for ever and ever in
 an infinite loop.  These actions are less common; and we can ignore
 them.)  Most frequently, the interpreter returns a value.
 
    At the same time the interpreter returns a value, it may do something
 else as well, such as move a cursor or copy a file; this other kind of
 action is called a “side effect”.  Actions that we humans think are
 important, such as printing results, are often side effects to the Lisp
 interpreter.  It is fairly easy to learn to use side effects.
 
    In summary, evaluating a symbolic expression most commonly causes the
 Lisp interpreter to return a value and perhaps carry out a side effect;
 or else produce an error.