A new version of my current personal source of CLISP is at the usual place,
in ma2s2.mathematik.uni-karlsruhe.de:/pub/lisp/clisp/source-haible/.
Change log since 1 January 1995:
4 April 1995
============
User visible changes
--------------------
* The initial value of *PACKAGE* can be specified by a command line option.
* X3J13 vote <6> is implemented: New place ROW-MAJOR-AREF.
* X3J13 vote <126> is implemented: New function DELETE-PACKAGE.
* X3J13 vote <14> is implemented: Closing a synonym stream does not close
its constituent stream.
* Foreign language interface for C and ANSI C. New package FFI. New macros
FFI:DEF-C-TYPE, FFI:DEF-C-VAR, FFI:DEF-C-CALL-OUT, FFI:DEF-C-CALL-IN,
FFI:DEF-C-ENUM, FFI:DEF-C-STRUCT, FFI:DEF-CALL-OUT, FFI:DEF-CALL-IN,
FFI:ELEMENT, FFI:DEREF, FFI:SLOT, FFI:CAST, FFI:TYPEOF, FFI:SIZEOF,
FFI:BITSIZEOF.
This currently works only on Unix and only with the CPUs
i386/486/586, m680x0, Mips, SPARC, DEC Alpha, HP-PA, RS/6000.
Warning: (COMPILE-FILE "filename.lsp") now overwrites the file "filename.c".
* New macros MUFFLE-CERRORS and APPEASE-CERRORS. During their execution,
continuable errors are handled by the function CONTINUE. MUFFLE-CERRORS
does this silently, APPEASE-CERRORS prints the error as a warning.
* New macro EXIT-ON-ERROR. During its execution, non-continuable errors
cause CLISP to exit with error status.
* The function ED, when asked to edit a non-existent file, now creates that
file instead of signalling an error.
* When a non-absolute pathname is specified for the -o command line option
(destination file of a compilation), it is interpreted as relative to the
current directory, not relative to the source file of the compilation.
* The readline library now uses the last column of the screen if the terminal
is an xterm, for example. Work done by Chet Ramey.
* Fixed two bugs in the LOOP macro: FOR-AS-ACROSS clauses could result in AREF
signalling an out-of-bounds error at the end of the vector. Initialisations
for FOR-AS-= clauses could be executed in the wrong order.
* Fixed a bug in the compiler which caused LOAD-TIME-VALUE forms to be
evaluated at compile time.
* Fixed a bug in the debugger: Choosing a restart Rnnn always invoked the
last restart listed, not the chosen one.
* Fixed a bug: (CLOSE *TERMINAL-IO*) signals an error again.
* On DOS and OS/2, the Lisp reader now treats Ctrl-Z as whitespace.
* The -I command line option now tells the readline library to handle the Tab
character as normal self-inserting character.
* Unix version only: DISASSEMBLE can display machine instructions, provided
that GNU gdb is present.
Portability
-----------
* Updated support for EMX.
* Fixed a bug which caused a preprocessor error on SunOS and OSF/1.
* Small fixes for Sinix and SCO.
* Removed support for Coherent.
Other modifications
-------------------
* Generational garbage collection now also works on IRIX 5.2.
* Generational garbage collection and support for immutable objects don't
exclude each other any more.
* Speed up the bytecode interpreter by about 2%.
* Miscellaneous documentation updates.
Bruno Haible
haible@ma2s2.mathematik.uni-karlsruhe.de