[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

New version of old CLISP



I am making available my current personal source of CLISP. It is in
ma2s2.mathematik.uni-karlsruhe.de:/pub/lisp/clisp/source-haible/clispsrc.tar.z.

Active development of CLISP is done by Marcus Daniels <marcus@ee.pdx.edu>.
Please send suggestions for improvement to him (to me as well, if you like).
I expect he will make a new release of CLISP soon. His version of CLISP
will certainly be more portable, easier to port and have more distinguished
features (like a foreign function interface). But if you are already
familiar with installing CLISP and only want a source with all currently
known bugs fixed, you may try the one in source-haible/.


Change log since 8 January 1994:


22 June 1994
============

User visible changes
--------------------

* French support is now complete. Thanks to Joerg Hoehle.

* 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
  ENGLISH, DEUTSCH, FRANCAIS and LANGUAGE-CASE.

* There is a command line option that makes CLISP behave more like what
  ILISP (a popular Emacs LISP interface) expects. Thanks to Marcus Daniels.

* The function CLOS:CALL-NEXT-METHOD can now be called with arguments, but
  the check that the set of applicable methods must be the same as for the
  original arguments will be bypassed.

* New functions READ-CHAR-SEQUENCE, WRITE-CHAR-SEQUENCE, READ-BYTE-SEQUENCE,
  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
  macro WITHOUT-FLOATING-POINT-UNDERFLOW.

* X3J13 vote <95> is implemented: If the readtable argument passed to
  GET-MACRO-CHARACTER and GET-DISPATCH-MACRO-CHARACTER is NIL, the standard
  readtable is used.

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

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

* 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.
  New functions MAKE-GENERIC-STREAM, GENERIC-STREAM-CONTROLLER,
  GENERIC-STREAM-P, GENERIC-STREAM-READ-CHAR, GENERIC-STREAM-READ-BYTE,
  GENERIC-STREAM-LISTEN, GENERIC-STREAM-WRITE-CHAR, GENERIC-STREAM-WRITE-BYTE,
  GENERIC-STREAM-WRITE-STRING, GENERIC-STREAM-CLEAR-INPUT,
  GENERIC-STREAM-CLEAR-OUTPUT, GENERIC-STREAM-FINISH-OUTPUT,
  GENERIC-STREAM-FORCE-OUTPUT, GENERIC-STREAM-CLOSE.
  See impnotes.txt for details. Thanks to Marcus Daniels and Don Cohen.

* The macro WITH-OUTPUT-TO-PRINTER may now also work on OS/2.
  
* Fixed a CLOS bug: Generic functions with both optional and keyword
  arguments didn't work.

* Fixed a serious bug in the compiler which caused incorrect code to be
  generated for functions like (LAMBDA (X) (SETQ X 1)).

* Fixed a serious bug in the compiler which caused the compiler to crash
  when compiling functions which contain two or more calls to ASSERT.

* Fixed a bug: The macroexpander of MULTIPLE-VALUE-SETQ built up a
  syntactically illegal form.

* Fixed a bug in the reader: When reading pathnames from the syntax
  #S(PATHNAME ...), #n# references in pathname components were not
  resolved prior to calling MAKE-PATHNAME.

* Fixed a bug in the reader: (read-from-string "1/") signalled an error
  of type DIVISION-BY-ZERO.

* 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.

* Fixed a bug in the readline library (bad handling of prompts longer than
  one line). Thanks to Marcus Daniels.

Installation
------------

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

Portability
-----------

* Unix version only: Getting the time zone should be more robust.

* Added support for NeXT (68k or i386 CPU) running NeXTstep 3.2. Thanks to
  Marcus Daniels.

* Added support for Sequent PTX. Thanks to Marcus Daniels.

* Added support for m88000 running DG/UX. Thanks to Pat McClanahan.

* Added support for UnixWare. Thanks to Alexander Adam.

* Added support for BSDI/386. Thanks to Atsuo Ohki.

* More support for WATCOM C on DOS. Thanks to Blake McBride.

* More support for IRIX 5. Thanks to Bjorn Remseth.

* More support for Sun4m. Thanks to Neil Faulks.

* Better support (speedup) for HP 9000/800 running HP-UX.

* On HP 9000/700 running HP-UX: Don't depend directly on the assembler.

* Maybe some support for SCO. Thanks to Cathy Bareiss.

Other modifications
-------------------

* Speedup SUBLIS and NSUBLIS.

* Let all known versions of gcc2 emit dbra instructions for loops. Thanks
  to Joerg Hoehle.

* Renamed condition.lsp to conditio.lsp.

* Miscellaneous documentation updates.


                    Bruno Haible
                    haible@ma2s2.mathematik.uni-karlsruhe.de