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

New CLISP version



Once more, there is a new version of CLISP at the usual place:
ma2s2.mathematik.uni-karlsruhe.de:/pub/lisp/clisp/source .

The port to VMS still stagnates, being finished at 85%. I haven't heard
from anyone with access to a powerful VMS machine. If you know someone
who would be willing to help me with the last steps of the port, please
tell me.

Excerpt from the change log:

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

* X3J13 vote <150> is mostly implemented: Reading and printing of symbols
  (and characters with bits or fonts attributes) is now affected by
  (READTABLE-CASE *READTABLE*), whose value may be one of :UPCASE, :DOWNCASE
  and :PRESERVE. New place READTABLE-CASE.

* Support for immutable objects is implemented. Attempts to modify read-only
  data will signal an error. Program text and quoted constants loaded from
  files are considered read-only data. Never again will you be allowed to
  write programs that destructively modify themselves!
  This works only for Unix implementations with powerful virtual memory
  management, currently only Linux and SunOS. To enable it, you have to
  add -DIMMUTABLE to the CFLAGS in the makefile when building CLISP.

* Fixed DEFUN such that
  (progn
    (flet ((bar (x) (+ x 10))) (defun bar (y) (if (zerop y) 1 (bar (1- y))))
    (bar 1)
  )
  returns 10 instead of 1.

* Fixed a bug in the compiler that caused the compiler to crash by endless
  recursion and stack overflow when compiling assignments to symbol macros.

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

* Added support for m88000 CPU.

* Amiga version: detect 68000 CPU, for better use of present memory.

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

* Miscellaneous documentation updates.


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