$Revision: 5.0.2.4 $
Package: TOP-LEVEL
Arguments: (stream function arguments &key initial-bindings)
It is the purpose of some processes to communicate with a user over a separate
dedicated *terminal-io* stream. (This user is not necessarily a human -- it might be a
socket connection to another program, possibly on a different host.) This function is
intended as a convenient way to start a process which maintains its own bindings for the
standard Common Lisp dynamic variables. *terminal-io* is first bound to stream.
Then the process-initial-bindings slot of the process is examined, and if it is nil
,
the bindings in the initial-bindings keyword to this function are established.
(If process-initial-bindings is not nil
,
the value of the initial-bindings argument is ignored.) The default value for the
initial-bindings argument is excl:*cl-default-special-bindings*.
Then function is applied to the arguments. Note that the arguments argument is a single
list, not an &rest argument.
The name of this function implies a dichotomy between functions created to do predetermined computation which might not need to bind these Lisp-package variables, and those which interact with a user or other external process. Such a dichotomy is reasonable, but of course, only approximates the diversity of real applications.
See top_level.htm for more information on the top level.
The general documentation description is in introduction.htm. The index in index.htm.
Copyright (C) 1998-1999, Franz Inc., Berkeley, CA. All Rights Reserved.