Return-Path: Received: from CS.CMU.EDU by A.GP.CS.CMU.EDU id aa09620; 7 Jan 94 13:19:44 EST Received: from nz11.rz.uni-karlsruhe.de by CS.CMU.EDU id aa12215; 7 Jan 94 13:19:27 EST Received: from ma2s2.mathematik.uni-karlsruhe.de by nz11.rz.uni-karlsruhe.de with SMTP (PP) id <20849-0@nz11.rz.uni-karlsruhe.de>; Fri, 7 Jan 1994 19:19:07 +0100 Received: from ma2s3.mathematik.uni-karlsruhe.de by ma2s2.mathematik.uni-karlsruhe.de (4.1/SMI-4.0) id AA15441; Fri, 7 Jan 94 19:25:59 +0100 Date: Fri, 7 Jan 94 19:25:59 +0100 From: haible@ma2s2.mathematik.uni-karlsruhe.de (Bruno Haible) Message-Id: <9401071825.AA15441@ma2s2.mathematik.uni-karlsruhe.de> To: clisp-list@ma2s2.mathematik.uni-karlsruhe.de Subject: New CLISP version Cc: AI.Repository@cs.cmu.edu, friedman@gnu.ai.mit.edu Once more, there is a new version of CLISP at the usual place: ma2s2.mathematik.uni-karlsruhe.de:/pub/lisp/clisp/source . Excerpt from the change log: Important note -------------- * Changed bytecode format. All .fas files generated by previous CLISP versions are invalid and must be recompiled. User visible changes -------------------- * X3J13 votes <186> and <31> are implemented: the Common Lisp Condition System. New macros DEFINE-CONDITION, IGNORE-ERRORS, HANDLER-CASE, HANDLER-BIND, RESTART-CASE, WITH-RESTARTS, WITH-SIMPLE-RESTART, RESTART-BIND, WITH-CONDITION-RESTARTS, new types RESTART, CONDITION, SERIOUS-CONDITION, ERROR, PROGRAM-ERROR, CONTROL-ERROR, ARITHMETIC-ERROR, DIVISION-BY-ZERO, FLOATING-POINT-OVERFLOW, FLOATING-POINT-UNDERFLOW, CELL-ERROR, UNBOUND-VARIABLE, UNDEFINED-FUNCTION, TYPE-ERROR, PACKAGE-ERROR, STREAM-ERROR, END-OF-FILE, FILE-ERROR, STORAGE-CONDITION, WARNING, SIMPLE-CONDITION, SIMPLE-ERROR, SIMPLE-TYPE-ERROR, SIMPLE-WARNING, new functions MAKE-CONDITION, SIGNAL, COMPUTE-RESTARTS, FIND-RESTART, INVOKE-RESTART, INVOKE-RESTART-INTERACTIVELY, ABORT, CONTINUE, MUFFLE-WARNING, STORE-VALUE, USE-VALUE, INVOKE-DEBUGGER, RESTART-NAME, ARITHMETIC-ERROR-OPERATION, ARITHMETIC-ERROR-OPERANDS, CELL-ERROR-NAME, TYPE-ERROR-DATUM, TYPE-ERROR-EXPECTED-TYPE, PACKAGE-ERROR-PACKAGE, STREAM-ERROR-STREAM, FILE-ERROR-PATHNAME, SIMPLE-CONDITION-FORMAT-STRING, SIMPLE-CONDITION-FORMAT-ARGUMENTS, new variables *BREAK-ON-SIGNALS*, *DEBUGGER-HOOK*. See impnotes.txt for details. Thanks to David Gadbois who wrote most of this. * X3J13 vote <40> is partially implemented: New variable *PRINT-READABLY*. * X3J13 vote <34> is implemented: Arrays and packages may now appear as constants in compiled code. * X3J13 vote <90> is implemented: FUNCTIONP on symbols and conses now always returns NIL. The type FUNCTION is disjoint from SYMBOL and CONS. (COERCE object 'FUNCTION) is implemented. Warning: Old style calls like (FUNCTIONP object) may need to be converted to (OR (FUNCTIONP object) (SYMBOLP object) (AND (CONSP object) (EQ (CAR object) 'LAMBDA)) ) This fixes a CLOS bug: (TYPEP object 'FUNCTION) wasn't equivalent to (TYPEP object (FIND-CLASS 'FUNCTION)). * Two new debugger commands Break+ and Break- permit to set resp. remove breakpoints at specified EVAL or APPLY frames. * Warnings and errors produced by COMPILE-FILE are now accompanied by source line number information. * The sub-char passed as second argument to read dispatch macros is now exactly the first non-digit read from the stream. Previously it was its upper-case equivalent. * DEFPACKAGE now accepts an option (:DOCUMENTATION doctring). * DIRECTORY now accepts a keyword argument :CIRCLE. If it is non-NIL, the directory search for ".../" and "**/" wildcards on Unix avoids endless loops that may result from symbolic links. * The variable *LOAD-PATHS* in the Unix versions of config.lsp now uses "~/" (the home directory at run time) instead of #"~/" (the home directory at installation time). Thanks to Gabor Herr. * Unix and OS/2 versions: New dangerous functions MAKE-PIPE-IO-STREAM, RUN-SHELL-COMMAND and RUN-PROGRAM. * Unix version only: The command shell used by MAKE-PIPE-...-STREAM is now always /bin/sh; the environment variable SHELL is only used as interactive shell. Fixed a race condition in the functions EXECUTE, MAKE-PIPE-INPUT-STREAM, MAKE-PIPE-OUTPUT-STREAM that caused the child process to fail mysteriously. * Attacks such as (DO-ALL-SYMBOLS (S) (UNLESS (CONSTANTP S) (SET S NIL))) no longer crash CLISP. * Fixed a CLOS bug: DEFCLASS failed to signal an error if several direct slots had identical names. * Fixed a bug in the reader: When reading hash tables which contain #n# references, the hash codes must be recomputed after resolving the references. Thanks to Marcus Daniels. * Fixed a bug in the printer: Printed representations with two different #1= definitions could result when PRINT-OBJECT methods were called while *PRINT-CIRCLE* was true. Thanks to Marcus Daniels. Portability ----------- * Fixed five bugs in the number crunching routines that appeared on 64-bit processors or in combination with the WIDE tagging scheme. * More support for 64-bit processors like DEC Alpha. * Added support for NeXT running NeXTstep 3.1. Thanks to Marcus Daniels. * Added support for Amiga 3000 running AMIX Unix. Thanks to Michel Loi. * Fixed a problem with Ctrl-C on HP-UX. Thanks to Gabor Herr. * Added support for HP9000/300 running HP-UX. Thanks to Gabor Herr. * Added support for WATCOM C 9.5 on DOS. * Amiga version: Tolerate memory outside the 27-bit addressable range. * Remove support for the Atari ST assembly language version CLISP1. Other modifications ------------------- * Added some documentation of the GNU readline library. * Changed the default memory size back from 2.5 megabytes to 2 megabytes. * Miscellaneous documentation updates. CLISP now compiles and runs on * microcomputers: * Atari ST/TT * Amiga 500-4000 * DOS * MS Windows 3.1 * OS/2 2.0 * Unix workstations: * PC, Linux * PC, USL SVR4 * Sun4, SunOS 4 or 5 * HP9000/800, HP-UX * SGI Mips, Irix 4 or 5 * DEC Alpha AXP, OSF 1.3 * DECstation 5000, Ultrix 4.2 * IBM RS/6000, AIX 3.2 * M88000 * Sun386, SunOS 4 * Sun3, SunOS 4 (?) * HP9000/300, HP-UX or NetBSD * Apple MacII, A/UX (?) * Amiga 3000, Amiga Unix 2.1 * NeXT, NeXTstep 3.1 * PC, 386BSD or NetBSD * PC, Coherent 4.0 * Atari ST/TT, MiNT (?) New binaries have been built for: Sun4, SunOS 5.2 982055 Dec 3 sun4-sunos52/clisp.tar.z Binaries have been rebuilt for the following architectures: Linux 1128826 Jan 7 linux/clisp-english.tar.z Linux 1134023 Jan 7 linux/clisp-deutsch.tar.z DEC Alpha AXP, OSF 1.3 1379905 Dec 5 decalpha-osf/clisp.tar.z Amiga 500-4000 536424 Dec 11 amiga/CLisp-931211-Part1-high.lha Amiga 500-4000 542329 Dec 11 amiga/CLisp-931211-Part1-low.lha Amiga 500-4000 532023 Dec 11 amiga/CLisp-931211-Part2.lha Bruno Haible haible@ma2s2.mathematik.uni-karlsruhe.de