CLISP(1)                                                 CLISP(1)



NNAAMMEE
       clisp - Common Lisp language interpreter and compiler

SSYYNNOOPPSSIISS
       cclliisspp  [  --hh  |  ----hheellpp ] [ ----vveerrssiioonn ] [ ----lliicceennssee ] [ --BB
       _l_i_s_p_l_i_b_d_i_r ] [ --KK _l_i_n_k_i_n_g_-_s_e_t ] [ --MM _m_e_m_f_i_l_e ] [  --mm  _m_e_m_-
       _s_i_z_e  ] [ --LL _l_a_n_g_u_a_g_e ] [ --NN _l_o_c_a_l_e_d_i_r ] [ --EE_d_o_m_a_i_n _e_n_c_o_d_-
       _i_n_g ] [ --qq | ----qquuiieett | ----ssiilleenntt ] [ --iinntteerraaccttiivvee--ddeebbuugg ] [
       --ww  ] [ --II ] [ --aannssii ] [ --ttrraaddiittiioonnaall ] [ --pp _p_a_c_k_a_g_e_n_a_m_e ]
       [ --CC ] [ --nnoorrcc ] [ --ii _i_n_i_t_f_i_l_e ...  ] [ --cc [ --ll ] _l_i_s_p_f_i_l_e
       [  --oo  _o_u_t_p_u_t_f_i_l_e  ] ...  ] [ --xx _e_x_p_r_e_s_s_i_o_n ] [ _l_i_s_p_f_i_l_e [
       _a_r_g_u_m_e_n_t ] ]

DDEESSCCRRIIPPTTIIOONN
       Invokes the common lisp interpreter and compiler.  Invoked
       without  arguments,  executes  a  read-eval-print loop, in
       which expressions are in turn read  from  standard  input,
       evaluated  by the lisp interpreter, and their results out-
       put to standard output.  Invoked with  --cc,  the  specified
       lisp files are compiled to a bytecode that can be executed
       more efficiently.

OOPPTTIIOONNSS
       --hh, ----hheellpp
              Displays a help message on how to use cclliisspp.

       ----vveerrssiioonn
              Displays the cclliisspp version number, as given by  the
              function call _(_l_i_s_p_-_i_m_p_l_e_m_e_n_t_a_t_i_o_n_-_v_e_r_s_i_o_n_).

       ----lliicceennssee
              Displays  a  summary  of the licensing information,
              the GNU GPL.

       --BB _l_i_s_p_l_i_b_d_i_r
              Specifies the installation directory. This  is  the
              directory  containing  the  linking  sets and other
              data files.  This option is normally not necessary,
              because   the  installation  directory  is  already
              built-in  in  the  cclliisspp   executable.    Directory
              lisplibdir  can  be  changed  at run-time using the
              symbol-macro **lliibb--ddiirreeccttoorryy**..

       --KK _l_i_n_k_i_n_g_-_s_e_t
              Specifies the linking set to  be  run.  This  is  a
              directory containing at least a main executable and
              an initial memory image. Possible values are  bbaassee,
              ffuullll.  The default is bbaassee.

       --MM _m_e_m_f_i_l_e
              Specifies the initial memory image.  This must be a
              memory dump produced by the  _s_a_v_e_i_n_i_t_m_e_m  function.
              It may have been compressed using GNU gzip.

       --mm _m_e_m_s_i_z_e
              Sets  the  amount  of memory cclliisspp tries to grab on
              startup.  The amount may be given as _n_n_n_n_n_n_n  (mea-
              sured in bytes), _n_n_n_nKK or _n_n_n_nKKBB (measured in kilo-
              bytes)  or  _nMM  or  _nMMBB  (measured  in  megabytes).
              Default  is  2  megabytes.   The  argument  is con-
              strained above 100 KB.  -- This  version  of  cclliisspp
              allocates    memory    dynamically.    _m_e_m_s_i_z_e   is
              essentially ignored.

       --LL _l_a_n_g_u_a_g_e
              Specifies the language cclliisspp  uses  to  communicate
              with  the  user. This may be eenngglliisshh.  The language
              may be changed at run-time using the  symbol  macro
              **ccuurrrreenntt--llaanngguuaaggee**..

       --NN _l_o_c_a_l_e_d_i_r
              Specifies  the  base  directory  of  locale  files.
              cclliisspp  will  search   its   message   catalogs   in
              _l_o_c_a_l_e_d_i_r/_l_a_n_g_u_a_g_e/LC_MESSAGES/clisp.mo.        The
              localedir may be changed at run-time using the sym-
              bol macro **ccuurrrreenntt--llaanngguuaaggee**..

       --EE_d_o_m_a_i_n _e_n_c_o_d_i_n_g
              Specifies  the  encoding  used  for a given domain,
              overriding the default which depends on  the  envi-
              ronment  variables  LLCC__AALLLL, LLCC__CCTTYYPPEE, LLAANNGG.  _d_o_m_a_i_n
              can be ffiillee, affecting **ddeeffaauulltt--ffiillee--eennccooddiinngg**,  or
              ppaatthhnnaammee,  affecting **ppaatthhnnaammee--eennccooddiinngg**, or tteerrmmii--
              nnaall,  affecting  **tteerrmmiinnaall--eennccooddiinngg**,  or  ffoorreeiiggnn,
              affecting  **ffoorreeiiggnn--eennccooddiinngg**,  or  mmiisscc, affecting
              **mmiisscc--eennccooddiinngg**.  or _b_l_a_n_k_, affecting  all  of  the
              above.  Note that these values cannot be saved in a
              memory image.  You have to use the init file to set
              them on startup.

       --qq, ----qquuiieett, ----ssiilleenntt
              Quiet:  cclliisspp  displays no banner at startup and no
              good-bye message when quitting.

       --iinntteerraaccttiivvee--ddeebbuugg
              Override the batch mode  imposed  by  --cc,  --xx,  and
              lliissppffiillee  and  allow interactive handling of _A_S_S_E_R_T
              and friends.

       --ww     Wait for keypress after program termination.

       --II     Be ILISP friendly. ILISP is  an  alternative  Emacs
              interface to Common Lisp systems. With this option,
              cclliisspp interacts in a way that ILISP can deal  with.
              Currently  the only effect of this is that unneces-
              sary prompts are not suppressed.  Furthermore,  the
              GNU  readline  library treats Tab as a normal self-
              inserting character.

       --aannssii  ANSI CL compliant: comply with the ANSI CL specifi-
              cation even where CLISP has been traditionally dif-
              ferent.  It sets the symbol macro _*_a_n_s_i_* to tt.  See
              impnotes.html,  section  "Maximum  ANSI  CL compli-
              ance", for details.

       --ttrraaddiittiioonnaall
              Traditional: reverses the residual effects of --aannssii
              in the saved image.

       --pp _p_a_c_k_a_g_e_n_a_m_e
              At startup the value of the variable _*_p_a_c_k_a_g_e_* will
              be set  to  the  package  named  _p_a_c_k_a_g_e_n_a_m_e.   The
              default  is  the  package which was active when the
              image was saved, normally UUSSEERR, or CCOOMMMMOONN--LLIISSPP--UUSSEERR
              if the option --aa was specified.

       --CC     Compile  when  load:  At  startup  the value of the
              variable _*_l_o_a_d_-_c_o_m_p_i_l_i_n_g_* will be set to  tt.   Code
              being _l_o_a_ded will then be compiled on the fly. This
              results in slower loading, but faster execution.

       --nnoorrcc  Normally cclliisspp loads a user run control  (RC)  file
              on  startup  (this  happens  after the --CC option is
              processed).       The      file      loaded      is
              $${{HHOOMMEE}}//..cclliisspprrcc..lliisspp    or   $${{HHOOMMEE}}//..cclliisspprrcc..ffaass,
              whichever is newest. This option,  --nnoorrcc,,  prevents
              loading of the RC file.

       --ii _i_n_i_t_f_i_l_e _._._.
              Specifies  initialization  files  to  be  _l_o_a_ded at
              startup. These should be lisp files (source or com-
              piled).  Several  --ii  options can be given; all the
              specified files will be loaded in order.

       --cc _l_i_s_p_f_i_l_e _._._.
              Compiles  the  specified  _l_i_s_p_f_i_l_es   to   bytecode
              (*.fas).  The  compiled  files  can  then be _l_o_a_ded
              instead of the sources to gain efficiency.

       --oo _o_u_t_p_u_t_f_i_l_e
              Specifies the output file or directory for the com-
              pilation of the last specified _l_i_s_p_f_i_l_e.

       --ll     A  bytecode listing (*.lis) of the files being com-
              piled will be produced.  Useful only for  debugging
              purposes. See the documentation of _c_o_m_p_i_l_e_-_f_i_l_e for
              details.

       --xx _e_x_p_r_e_s_s_i_o_n_s
              Executes a series of arbitrary expressions  instead
              of  a  read-eval-print  loop.   The  values  of the
              expressions will be output to standard output.  Due
              to  the  argument processing done by the shell, the
              _e_x_p_r_e_s_s_i_o_n_s must be enclosed in double quotes,  and
              double  quotes  and backslashes must be preceded by
              backslashes.

       _l_i_s_p_f_i_l_e [_a_r_g_u_m_e_n_t _._._.]
              Loads and executes a _l_i_s_p_f_i_l_e.  There  will  be  no
              read-eval-print  loop.  Before  _l_i_s_p_f_i_l_e is loaded,
              the variable _*_a_r_g_s_* will be  bound  to  a  list  of
              strings,  representing  the  _a_r_g_u_m_e_n_ts.   The first
              line of _l_i_s_p_f_i_l_e may start with ##!!, thus permitting
              cclliisspp to be used as a script interpreter.  If _l_i_s_p_-
              _f_i_l_e is --, the standard input is used instead of  a
              file.   If  _l_i_s_p_f_i_l_e is an empty string  ,, the rest
              of the arguments is still available in _*_a_r_g_s_* _, for
              parsing  by the iinniitt--ffuunnccttiioonn of the current image.
              This option must be the last one. No RC  file  will
              be executed.


RREEFFEERREENNCCEE
       The language implemented mostly conforms to
              ANSI Common Lisp standard X3.226-1994
              http://www.x3.org/tc_home/j13sd4.htm
       available online as the
              Common Lisp HyperSpec
              http://www.lisp.org/HyperSpec/
              ("CLHS" for short)
       which supersedes the earlier specifications
              Guy L. Steele Jr.: Common Lisp - The Language.
              Digital Press. 2nd edition 1990, 1032 pages.
              http://www.cs.cmu.edu/afs/cs.cmu.edu/project/ai-
        repository/ai/html/cltl/cltl2.html
              ("CLtL2" for short)
       and
              Guy L. Steele Jr.: Common Lisp - The Language.
              Digital Press. 1st edition 1984, 465 pages.
              ("CLtL1" for short)

UUSSEE
       hheellpp   to get some on-line help.

       ((aapprrooppooss _n_a_m_e))
              lists the symbols relating to _n_a_m_e.

       ((eexxiitt)) or ((qquuiitt)) or ((bbyyee))
              to quit cclliisspp.

       EOF (Ctrl-Z)
              to leave the current read-eval-print loop.

       arrow keys
              for editing and viewing the input history using GNU
              readline(1).

       Tab key
              Context  sensitive:  If  you  are  in the "function
              position" (in the first  symbol  after  an  opening
              paren  or in the first symbol after a #'), the com-
              pletion is limited to the symbols that  name  func-
              tions.   If  you  are  in  the  "filename position"
              (inside a string after #P), the completion is  done
              across  file names, bash(1)-style.  If you have not
              started typing the next symbol (i.e., you are at  a
              whitespace),  the  current  function  or  macro  is
              DESCRIBEd.  Otherwise, the symbol you are currently
              typing is completed.

FFIILLEESS
       _c_l_i_s_p  startup script

       _l_i_s_p_._r_u_n
              main executable

       _l_i_s_p_i_n_i_t_._m_e_m
              initial memory image

       _c_o_n_f_i_g_._l_i_s_p
              site-dependent configuration

       _*_._l_i_s_p lisp source

       _*_._f_a_s  lisp code, compiled by cclliisspp

       _*_._l_i_b  lisp source library information, generated and used
              by the cclliisspp compiler when compiling rreeqquuiirree forms

       _*_._c    C code, compiled from lisp source by cclliisspp for  the
              FFI

EENNVVIIRROONNMMEENNTT
       CCLLIISSPP__LLAANNGGUUAAGGEE
              specifies  the  language  cclliisspp uses to communicate
              with the user. The value may  be  eenngglliisshh,  ggeerrmmaann,
              ffrreenncchh,  ssppaanniisshh,  dduuttcchh,  rruussssiiaann  and defaults to
              eenngglliisshh.  The --LL option can  be  used  to  override
              this environment variable.

       LLCC__CCTTYYPPEE
              specifies the locale which determines the character
              set in use.  The value can be of the form  _l_a_n_g_u_a_g_e
              or  _l_a_n_g_u_a_g_e___c_o_u_n_t_r_y  or  _l_a_n_g_u_a_g_e___c_o_u_n_t_r_y_._c_h_a_r_s_e_t,
              where _l_a_n_g_u_a_g_e is a  two-letter  ISO  639  language
              code  (lower case), and _c_o_u_n_t_r_y is a two-letter ISO
              3166 country code  (upper  case).   _c_h_a_r_s_e_t  is  an
              optional  character  set  specification,  and needs
              normally not be given because the character set can
              be inferred from the language and country.

       LLAANNGG   specifies  the  language  cclliisspp uses to communicate
              with the  user,  unless  it  is  already  specified
              through  the environment variable CCLLIISSPP__LLAANNGGUUAAGGEE or
              the --LL option.  It also specifies the locale deter-
              mining  the  character  set  in use, unless already
              specified   through   the   environment    variable
              LLCC__CCTTYYPPEE.   The  value  may begin with a two-letter
              ISO 639 language code, for example eenn, ddee, ffrr.

       HHOOMMEE and UUSSEERR
              are used for determining the value of the  function
              _u_s_e_r_-_h_o_m_e_d_i_r_-_p_a_t_h_n_a_m_e.  (Unix implementation only.)

       SSHHEELLLL (Unix implementation only)
              is used to find the interactive command interpreter
              called by _(_s_h_e_l_l_).

       TTEERRMM   determines the screen size recognized by the pretty
              printer.

SSEEEE AALLSSOO
       impnotes.html, _c_m_u_c_l(1), _e_m_a_c_s(1), _x_e_m_a_c_s(1).

BBUUGGSS
       When you encounter a bug in cclliisspp , please  report  it  to
       the              mailing             list             (see
       _h_t_t_p_:_/_/_l_i_s_t_s_._s_f_._n_e_t_/_l_i_s_t_s_/_l_i_s_t_i_n_f_o_/_c_l_i_s_p_-_l_i_s_t  )  or   the
       SourceForge           bug           tracker           (see
       _h_t_t_p_:_/_/_s_f_._n_e_t_/_t_r_a_c_k_e_r_/_?_f_u_n_c_=_a_d_d_&_g_r_o_u_p___i_d_=_1_3_5_5_&_a_t_i_d_=_1_0_1_3_5_5
       ).

       When submitting a bug report, please specify the following
       information:

       1. What is your platform? ( ''uunnaammee --aa'' on a  Unix  system)
       compiler version?  libc (on Linux)?

       2.  Where did you get the sources?  When?  (Absolute dates
       are preferred over the relative ones)

       3. How did you build cclliisspp ? (What command, options  etc.)
       Please  do  a clean build (remove your build directory and
       build with ''..//ccoonnffiigguurree ----bbuuiilldd bbuuiilldd'' or at  least  do  a
       ''mmaakkee  ddiissttcclleeaann''  before ''mmaakkee'' ). If you are reporting a
       crash (segmentation fault,  bus  error,  core  dump  etc),
       please  do  ''..//ccoonnffiigguurree ----wwiitthh--ddeebbuugg ----bbuuiilldd bbuuiilldd--gg'' and
       report the backtrace.

       4. If you are using pre-built  binaries,  the  problem  is
       likely to be in the incompatibilities between the platform
       on which the binary was built and yours; please  try  com-
       piling the sources.

       5. What is the output of ''cclliisspp ----vveerrssiioonn'' ?

       6.  Please  supply the full output (copy and paste) of all
       the error messages, as well as  detailed  instructions  on
       how to reproduce them.

       Known  bugs,  some  of  which  may  be platform-dependent,
       include

       Not all extensions from CLtL2 are supported.

       No on-line documentation beyond _a_p_r_o_p_o_s  and  _d_e_s_c_r_i_b_e  is
       available.

PPRROOJJEECCTTSS
       Writing on-line documentation.

       Enhance  the  compiler  so  that it can inline local func-
       tions.

       Specify a portable set of window and graphics  operations.

AAUUTTHHOORRSS
       Bruno  Haible  and  Michael Stoll.  See file CCOOPPYYRRIIGGHHTT for
       the list of the other contributors and the license.



                           31 May 2001                   CLISP(1)
