


CLISP(1)                                                 CLISP(1)


NAME
       clisp - Common Lisp language interpreter and compiler

SYNOPSIS
       clisp  [  -h  ]  [ -m memsize ] [ -W ] [ -M memfile ] [ -L
       language ] [ -N localedir ] [ -q ] [ -I ]  [  -C  ]  [  -i
       initfile ...  ] [ -c [ -l ] lispfile [ -o outputfile ] ...
       ] [ -p packagename ] [ -x expression ] [ lispfile [  argu-
       ment ] ]

DESCRIPTION
       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 -c, the specified
       lisp files are compiled to a bytecode that can be executed
       more efficiently.

OPTIONS
       -h     Displays a help message on how to use clisp.

       -m memsize
              Sets  the  amount  of memory clisp tries to grab on
              startup.  The amount may be given as nnnnnnn  (mea-
              sured in bytes), nnnnK or nnnnKB (measured in kilo-
              bytes)  or  nM  or  nMB  (measured  in  megabytes).
              Default  is  2  megabytes.   The  argument  is con-
              strained between 100 KB and 16 MB.  -- This version
              of  clisp allocates memory dynamically.  memsize is
              essentially ignored.  Nevertheless, the memory size
              is  limited  to  16 MB per Lisp type (cons, string,
              structure, etc.), unless the -W option is given.

       -W     Specifies to call the wide-mode version  of  clisp.
              It  uses  a 64-bit object representation instead of
              the usual 32-bit representation.  This  version  of
              clisp  is  slower,  but  has no memory size limita-
              tions.

       -M memfile
              Specifies the initial memory image.  This must be a
              memory dump produced by the saveinitmem function.

       -L language
              Specifies  the  language  clisp uses to communicate
              with the user. This may be english, deutsch,  fran-
              cais,  espanol.   Other  languages may be specified
              through the environment variable LANG, provided the
              corresponding message catalog is installed.

       -N localedir
              Specifies  the  base  directory  of  locale  files.
              clisp  will  search   its   message   catalogs   in



                           12 June 1997                         1





CLISP(1)                                                 CLISP(1)


              localedir/language/LC_MESSAGES/clisp.ext.

       -q     Quiet:  clisp  displays no banner at startup and no
              good-bye message when quitting.

       -I     ILISP friendly: clisp interacts in a way that ILISP
              (a  popular  Emacs  LISP  interface) 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.

       -C     Compile  when  load:  At  startup  the value of the
              variable *load-compiling* will be set to  t.   Code
              being loaded will then be compiled on the fly. This
              results in slower loading, but faster execution.

       -i initfile ...
              Specifies initialization  files  to  be  loaded  at
              startup. These should be lisp files (source or com-
              piled).

       -c lispfile ...
              Compiles the specified lispfiles to  bytecode.  The
              compiled  files  can  then be loaded instead of the
              sources to gain efficiency.

       -o outputfile
              Specifies the output file or directory for the com-
              pilation of the last specified lispfile.

       -l     A bytecode listing of the files being compiled will
              be produced.  Useful only for debugging purposes.

       -p packagename
              At startup the value of the variable *package* will
              be set to the package named packagename.

       -x expressions
              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
              expressions  must be enclosed in double quotes, and
              double quotes and backslashes must be  preceded  by
              backslashes.

       lispfile [argument ...]
              Loads  and  executes  a lispfile.  There will be no
              read-eval-print loop. Before  lispfile  is  loaded,
              the  variable  *args*  will  be  bound to a list of
              strings, representing the arguments.   If  lispfile
              is -, the standard input is used instead of a file.
              This option must be the last one.



                           12 June 1997                         2





CLISP(1)                                                 CLISP(1)


       @optionfile
              substitutes the contents  of  optionfile  as  argu-
              ments. Each line of optionfile is treated as a sep-
              arate argument to clisp.


REFERENCE
       The language implemented conforms to
              Guy L. Steele Jr.: Common Lisp - The Language.
              Digital Press. 1st edition 1984, 465 pages.
              ("CLtL1" for short)
       and to the older parts of
              Guy L. Steele Jr.: Common Lisp - The Language.
              Digital Press. 2nd edition 1990, 1032 pages.
              ("CLtL2" for short)

USE
       help   to get some on-line help.

       (apropos name)
              lists the symbols relating to name.

       (exit) or (quit) or (bye)
              to quit clisp.

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

       arrow keys
              for editing and viewing the input history.

       Tab key
              to complete the symbol's name you are just  typing.

FILES
       lisp.exe
              main executable

       lispinit.mem
              initial memory image

       config.lsp
              site-dependent configuration

       *.lsp  lisp source

       *.fas  lisp code, compiled by clisp

       *.lib  lisp source library information, generated and used
              by the clisp compiler

       *.c    C code, compiled from lisp source by clisp





                           12 June 1997                         3





CLISP(1)                                                 CLISP(1)


ENVIRONMENT
       CLISP_LANGUAGE
              specifies the language clisp  uses  to  communicate
              with  the  user. The value may be english, deutsch,
              francais and defaults to english.   The  -L  option
              can  be used to override this environment variable.

       LANG   specifies the language clisp  uses  to  communicate
              with  the  user,  unless  it  is  already specified
              through the environment variable CLISP_LANGUAGE  or
              the  -L option. The value may begin with a two-let-
              ter ISO 639 language code, for example en, de,  fr.

       COMSPEC (DOS, OS/2 implementations only)
              is  used  to find the command interpreter called by
              the function shell.

SEE ALSO
       cmucl(1), emacs(1).

BUGS
       The function inspect is not implemented.

       Not all extensions from CLtL2 are supported.

       No on-line documentation beyond apropos  and  describe  is
       available.

       Stack  overflow  aborts  the  program ungracefully, with a
       register dump.

       Pressing Control-C may not interrupt clisp in every situa-
       tion.

       Calling  the  function  execute on batch files crashes the
       machine.

PROJECTS
       Writing on-line documentation.

       Write inspect.

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

       Specify  a portable set of window and graphics operations.

AUTHORS
       Bruno  Haible   <haible@ma2s2.mathematik.uni-karlsruhe.de>
       and Michael Stoll.







                           12 June 1997                         4


