82087 packages online


No screenshot available
Short:CLISP: Common Lisp, release 30.5.96
Author:haible at, Joerg.Hoehle at
Uploader:Joerg Hoehle gmd de
Requires:OS 2.04 or newer
Download: - View contents
Dear lisper,

This archive contains an Amiga version of CLISP as of 30th May 1996. Please
see the files README (general description, installation), (command
line switches, tooltypes, explanation of files) and impnotes.txt
(differences between CLISP and the Common Lisp reference, extensions, ARexx
interface documentation). See also CHANGES.LOG if you are not a new user.
Aminet archive names have been shortened to fit the 20 characters limit.

Which version to choose

There may be four distinct binary versions of CLISP. These will be referred
as *-high, *-low, *-00 and *-wide. Depending on your machine, you'll not be
able to run all of them on one machine.

o The *-high version:

  + has been compiled for 68020 and higher, won't run on 68000 CPUs. It
    doesn't use the floating point coprocessor.

  + is able to deal with addresses from 0 to 0x07FFFFFF, thus working on most
    A3000 and A4000 machines. GigaMem uses addresses between 0x20000000 and
    0x60000000. VMM uses adresses at 0x40000000. CLISP cannot run with

  * checks the memory it gets, reverting to MEMF_24BITDMA, like *-low.

o The *-low Version:

  + has been compiled with a 68000 in mind. It can only deal with a 16MB
    address space ranging from 0 to 0x00FFFFFF. It clears the upper 8 bits of
    a 32 bit address before putting it on the bus and won't forget to check
    the memory it gets from the system.

  * checks whether AllocMem(MEMF_ANY) returns memory in the above range. If
    not, and if the CPU is not a 68000, it uses MEMF_24BITDMA (MEMF_CHIP on
    pre-2.0 machines) to ensure that it does not get memory outside the 16MB
    address range. DMA-able memory is a bit too hard a requirement, but there
    are no other flags.

  + can be made to run on a A3000 or A4000 by patching the executable to load
    the code and data hunks into CHIP memory (24BITDMA would suffice with
    >=2.0, but one can't say that easily in the load hunk structure). The
    supplied ratom.rexx ARexx script can do this for you, but you really
    don't want to run CLISP out of CHIP memory now that there is the *-high

o The *-00 version:

  + resembles the *-low version but has been compiled for a 68000 only. It
    doesn't need to clear the upper 8 bits, leading to faster execution on
    these machines (I measured 8% when compiling AFFI1.LSP, not that much).

  + removing german and french language support would make the executable
    size 14% smaller but not the image without new .fas files, so I
    refrained from doing so and maintained .fas file compatibility among all

o The *-wide version:

  + has been compiled for 68020 and higher, won't run on 68000 CPUs. It
    doesn't use the floating point coprocessor.

  + is able to deal with any address and works fine with virtual
    memory (VMM) or configurations where memory is located above
    0x08000000 (e.g. CSA-Derringer 030). This has been achived at the
    cost of using 64-bit integers. This makes the executable and
    memory files very large and run-time longer (I measured a 40%
    increase in execution time compared to *-high).

o The Lisp-part of CLISP is in the CLisp-*-Part2 archive, e.g. the compiler
  source can be found there. The archive also contains the compiled Lisp
  files (with the .fas extension), enabling you to easily build your own
  lispinit.mem file. You can generate own lispinit.mem file by executing -x (LOAD"init.fas")(SAVEINITMEM) in a shell, or call (SAVEINITMEM)
  directly when in your Lisp world.

o The complete CLISP source can be found in the clispsrc-<date>.tar.gz
  archive (see file ANNOUNCE). You need to have GNU-zip (gzip) and tar (or
  GNUtar) to be able to unpack it. I rearchived it for Aminet distribution
  into CLispsrc-<date>.lha.

Changes: (_part_ of CHANGES.LOG)

User visible changes

* REMOVE-METHOD didn't work. 
  Thanks to Roger Kehr <kehr at>
  and Bruno Haible for the fix.

* Fixed a bug in the compiler: A (MULTIPLE-VALUE-SETQ vars valform)
  or (MULTIPLE-VALUE-BIND vars valform ...) form was miscompiled if
  valform is known to produce a single value.
  Thanks to Bruno Haible and Paul Graham <pg at>.  

* RENAME-FILE now does *not* result in an error if the destination
  file already exists (unless the system call results in an error message).

* PROBE-FILE and TRUENAME will not issue error messages if given

* X3J13 vote <72> is implemented: all standard Common Lisp data objects 
  other than symbols and lists are self-evaluating. 
  Thanks to Pierpaolo Bernardi. 

* X3J13 vote <40> is partially implemented: New macro WITH-STANDARD-IO-SYNTAX.
  Thanks to Pierpaolo Bernardi.

* Some FORMAT fixes:
  + X3J13 vote <81> is implemented: The FORMAT ~:^ directive is more useful.
    Warning: Old style "~:^" directives need to be converted to "~#:^".
  + X3J13 vote <82> is implemented: The FORMAT ~D, ~B, ~O, ~X, ~R directives
    accept an optional comma-interval parameter.
  + X3J13 vote <84> is implemented: FORMAT ~C outputs characters with no bits
    as if by WRITE-CHAR.
  + Handling of ~^ within the FORMAT ~? directive.

* New function FINALIZE. (FINALIZE object function) has the effect that
  function will be called when object is being garbage collected.

* The initial value of *PACKAGE* can be specified by a command line option.

* Fixed a bug in the compiler which caused LOAD-TIME-VALUE forms to be
  evaluated at compile time.

* Amiga version: SCREEN package is implemented. Thanks to Jörg Höhle.

* Fixed a CLOS bug which caused (DEFCLASS FOO (STANDARD-OBJECT) ()) and
  (DEFINE-CONDITION FOO (CONDITION) ()) to signal errors.

* The DEFCONSTANT warning about redefinition of a constant is also inhibited
  if the constant's new and old values are the same string (in the sense of
  EQUAL). Thanks to Marcus Daniels.

* X3J13 vote <64> is implemented: New macro DESTRUCTURING-BIND.

* New function UNCOMPILE. (UNCOMPILE function-name) undoes the effect of
  (COMPILE function-name) if the function's definition had been entered
  in interpreted form.

* (LISP-IMPLEMENTATION-VERSION) returns a more precise version string.

* X3J13 votes <115> and <114> are implemented: an elaborate LOOP macro.
  New macro LOOP-FINISH.
  Warning: The scoping rules for the iteration variables are hairy. If a
  FOR/AS initialisation form refers to an iteration variable of a subsequent
  FOR/AS clause, the effects are implementation dependent!

* Fixed a bug in the debugger which caused the BACKTRACE commands to print
  garbage if the current user interface language was not english.

* French support is now complete. Thanks to Jörg Höhle.

* The user interface language (english, german or french) can now be chosen
  at startup time through a command line option. The constant *LANGUAGE* has
  been removed, and its value has been removed from *FEATURES*. New macros

  WRITE-BYTE-SEQUENCE which perform fast block I/O.

* Errors of type FLOATING-POINT-UNDERFLOW are inhibited in floating point
  computations (and zero is returned instead) during execution of the new

* PROBE-FILE doesn't report an error any more if an intermediate directory
  in the path doesn't exist. NIL is returned instead.

* The function INTERACTIVE-STREAM-P knows that if the terminal stream is
  referring to a regular file (via input redirection) it is not interactive.

* There is a user programmable kind of streams, called generic streams.
  See impnotes.txt for details. Thanks to Marcus Daniels and Don Cohen.

* Fixed a bug in the terminal stream: If several consecutive READ-LINE
  operations on the terminal stream were performed without any text
  containing newlines being output between them, the prompt finally got
  duplicated and then became longer and longer.


* All non-Unix versions: Setting the local time zone should now be much
  easier. 122 time zone names are supported.

Other modifications

* Speed up compiled calls to FORMAT with literal control string by use of

* When a memory image is loaded, the terminal stream from the previous
  session is closed.

* Copyright clarification.

* Miscellaneous documentation updates.

Enjoy and send me all sorts of comments, bug reports and suggestions. Please
mention your (LISP-IMPLEMENTATION-VERSION) and system (especially memory
location) configuration when doing so.

      Jörg Höhle.
Joerg.Hoehle at

Contents of dev/lang/CLISP960530-w.lha
---------- ----------- ------- ------- ------ ---------- ------------ -------------
[generic]                 4921   13217  37.2% -lh5- da73 Aug 12  1996 affi.txt
[generic]                  207     423  48.9% -lh5- fd1c Aug 12  1996
[generic]                 1475    3222  45.8% -lh5- 7c0b Apr 15  1996 announce
[generic]                21682   58128  37.3% -lh5- 02fa May 30  1996 changes.log
[generic]                  216     463  46.7% -lh5- 2668 Aug 12  1996
[generic]                 2310    5600  41.2% -lh5- 26aa Aug 12  1996 clisp.1
[generic]                 2861    9019  31.7% -lh5- cfac Aug 12  1996 clisp.html
[generic]                 2352    6085  38.7% -lh5- d16e Aug 13  1996
[generic]                  234     447  52.3% -lh5- af18 Aug 12  1996
[generic]                 5349   14813  36.1% -lh5- 58c6 Apr 15  1996 CLOS-guide.txt
[generic]                 3806   14291  26.6% -lh5- c825 Apr 15  1996 cltl2.txt
[generic]                 1843    3883  47.5% -lh5- db6d Apr 15  1996 copyright
[generic]                 6985   18087  38.6% -lh5- 7718 Apr 15  1996 gnu-gpl
[generic]                25566   72561  35.2% -lh5- 7b4d Jul 23  1996 impnotes.txt
[generic]                  207     423  48.9% -lh5- fd1c Aug 12  1996
[generic]                 4876   13586  35.9% -lh5- 1228 Aug 14  1996 install
[generic]                11501   30378  37.9% -lh5- 1621 Apr 15  1996 LISP-tutorial.txt
[generic]                  216     463  46.7% -lh5- 2668 Aug 12  1996
[generic]                  239     283  84.5% -lh5- be4d Aug 14  1996
[generic]                15829   42629  37.1% -lh5- 2742 May 30  1996 news
[generic]                 2635    5758  45.8% -lh5- 262b Aug 12  1996 readme
[generic]                 4568   10367  44.1% -lh5- b2bb Aug 13  1996 README.Amiga
[generic]                 2981    6301  47.3% -lh5- 366d Aug 12  1996
[generic]                  239     463  51.6% -lh5- 098d Aug 12  1996
[generic]                  240     463  51.8% -lh5- 3132 Aug 12  1996
[generic]                  865    1448  59.7% -lh5- 6dfc Aug 14  1996 todo
[generic]                 1179    2537  46.5% -lh5- 46b1 Jul 24  1996 config.lsp
[generic]                 7720   73895  10.4% -lh5- 2221 Apr 15  1996 timezone.lsp
[generic]                  413    1423  29.0% -lh5- 3a31 Aug  8  1996 fd/amigaguide.affi
[generic]                  616    1508  40.8% -lh5- 2023 Aug  8  1996 fd/asl-load.fas
[generic]                  605    1431  42.3% -lh5- 8156 Aug  8  1996 fd/asl-load.lsp
[generic]                  188     431  43.6% -lh5- 3671 Jul 22  1996 fd/asl.affi
[generic]                 1843    8445  21.8% -lh5- ff1e Aug  6  1996 fd/dos.affi
[generic]                 1411    6200  22.8% -lh5- 49a3 Aug 24  1995 fd/exec.affi
[generic]                 1973    9607  20.5% -lh5- dfe7 Aug  8  1996 fd/graphics.affi
[generic]                 1637    8080  20.3% -lh5- c608 Jul 22  1996 fd/intuition.affi
[generic]                 2385    7057  33.8% -lh5- 3d25 Aug 12  1996 fd/read-fd.fas
[generic]                 2256    6244  36.1% -lh5- 82bd Aug 12  1996 fd/read-fd.lsp
[generic]                  624    2433  25.6% -lh5- 8e3a Jul 22  1996 fd/utility.affi
[generic]                 2527    9772  25.9% -lh5- 439a Aug 13  1996 fd/window.fas
[generic]                 2078    5972  34.8% -lh5- b25e Aug 13  1996 fd/window.lsp
[generic]               358652  831500  43.1% -lh5- 9ec5 Aug 13  1996
[generic]               364487 1122098  32.5% -lh5- 0e9c Aug 14  1996 lispinit.mem
---------- ----------- ------- ------- ------ ---------- ------------ -------------
 Total        43 files  874797 2431434  36.0%            Aug 23  1996

Aminet © 1992-2017 Urban Müller and the Aminet team. Aminet contact address: <aminetaminet net>