;;; -*- Mode:LISP; Package:USER; Base:10; Readtable:Common-Lisp; Patch-File:T -*- ;;; Patch directory for System version 121 ;;; Written 25-Oct-87 15:32:12 by HLC at site LMI Cambridge ;;; while running on Djinn from band 1 ;;; with Experimental System 121.65, Experimental Lambda-Diag 15.0, Experimental ZMail 70.2, Experimental KERMIT 32.0, Experimental Unix-Interface 10.0, Experimental Local-File 72.0, Experimental FILE-Server 21.0, Experimental Tape 13.0, microcode 1733, SDU ROM 8, 121.35. (:EXPERIMENTAL ((0 "System Loaded" "rg" NIL) (1 "* Changes from Release 3: 218: Describing a symbol uses better criteria for figuring out when it is interned in other packages. MACROLET'ed macros are now seen by local functions. 210: OK, so LISP:TIME is a macro. Sue me. 222: Fix COMPILER::FIX-SYNONYM-SPECIAL-FORM, which wasn't rewriting forms using special forms aliased to other special forms correctly. The most common lossage occured when advising a function after binding ZL:COMPILE-ENCAPSULATIONS-FLAG non-NIL. 237: Fix redisplayer of RH buffer to call :STRING-OUT with the END argument supplied, avoiding possible bombouts due to STRING-LENGTH. SI::SET-DOCUMENTATION doesn't add an entry on the alist if the documentation is null." "rg" NIL) (2 "Fix brain damage in TV::SET-CONSOLE-SIZE that assumes only portait or landscape mode. Fancy landscape will now work." "EFH" NIL) (3 "Compiler optimizers: Add *TRACE-OPTIMIZATIONS*, *RECORD-OPTIMIZATIONS*. Add type-based optimizers (ADD-TYPED-OPTIMIZER, DEFINE-TYPED-OPTIMIZER). Open code LISP:MAP for all-list list-or-null result cases. LISP:SOME and LISP:EVERY turn into Zetalisp forms for single-list case." "rg" NIL) (4 "Fix PLIST operation on readtables." "rg" NIL) (5 "Make sure main name comes last in list of host names when parsing a HOSTS2 table." "PHILIPP" NIL) (6 "Finish making LISP:IF a special form. ZL:IF gets an alternate definition." "YOUCEF" NIL) (7 "Make SIGNAL-PROCEED-CASE work with proceed types (the keys of the clauses) that are not symbols, numbers, or characters. Make ASSERT work with PLACE expressions that not just variables. For both macros, the buggy cases already worked in the evaluator, but not in compiled code, where EQness is not always preserved. (RpK)" "PHILIPP" NIL) (8 "Improve error reporting of subscript-out-of-bounds error. Also, enable global more processing.." "RG" NIL) (9 "fix to chaos:reset for explorer." "rg" NIL) (10 "Make ALTERNATE-MACRO-DEFINITIONS of PROG and PROG* conform to Common LISP." "jrm" NIL) (11 "Make ALTERNATE-MACRO-DEFINITION for MULTIPLE-VALUE-SETQ" "jrm" NIL) (12 "Patches to fs:balance-directories from Release 3: Preserve version numbers. Copy files with same version number and later creation dates" "pld" NIL) (13 "Fix SI::DEFSTRUCT-EXPAND-{SIZE,CONS,ALTER,REF}-MACRO to take an (ignored) ENV argument so that it will be a real Common Lisp macro-expander function. Make Common Lisp versions of MACROEXPAND(-1) that respect the 22 special forms and use alternate macro definitions. Add SI:IMPLEMENTATION-SPECIAL-FORM-P, SI:COMMON-LISP-SPECIAL-FORM-P." "RpK" NIL) (14 "CHAOS bugs found when testing band transfer over Excelan: - If an RFC packet is retransmitted, the foreign hosts sets its send window to 65535. Fix: don't clobber the PKT-ACK-NUM field of an RFC packet which is (undocumentedly) being used to transmit the initial send window. Also don't believe a received window > MAXIMUM-WINDOW-SIZE - RECEIPT was updating the send window before taking into account the packet numbers just acknowledged - (serious bug -- totally screws flow control) The first data word of a STS packet is supposed to contain the highest packet number \"successfully received\". In the context of this implementation, that means the last packet read by the user. We were setting it to the last packet received in order, whether the user has read it or not. We now set it to the last packet read by user, which protects us from being flooded by old systems. We also ignore the first data word of received STS packets, taking the PKT-ACK-NUM instead, which keeps old systems from being flooded by us." "pld" NIL) (15 "Teach Luke Codewalker about the Force of macros: * The expansion functions of local macros are always defined in the top level environment. * There was never a conflict between the codewalker's macro/function environment and that of the macroexpander, so it was a big mistake to bind the former to NIL when walking the result of a macroexpansion. The latter change fixes ZL:MACROEXPAND-ALL when given things like (macrolet ((x () 'x) (y (thing) `(car ,thing))) (y (x)))" "RpK" NIL) (16 "Not sending the last buffer received in the STS message turns out to be a loser when talking to machines like ANGEL that properly use that field. Thus: go back to including that number in the STS message and use that number in RECEIPT to determine which send buffers to free up -- but properly use the ACK number to decide which packets update the send window. Note: YOU WILL LOSE when doing high bandwidth transfers FROM machines that don't have this patch." "pld" NIL) (17 "SI::VARIABLE-GLOBALLY-SPECIAL-P Make patches obey system default binary file type (and break up LOAD-PATCHES in the process). PRINT-SYSTEM-MODIFICATIONS output is a little less cluttered. Give a ``give up'' handler for MAKE-SYSTEM." "RpK" NIL) (18 "Add :CDR-CODED keyword arg to MAKE-LIST. This defaults to T for now." "RG" NIL) (19 "Minor fix to SI:PARSE-HOST." "RG" NIL) (20 "Added optional macroenvironment argument to SI::DISPLACED macro." "rauen" NIL) (21 "Hacked compiler to handle lexical closures created by the new evaluator." "rauen" NIL) (22 "Repair private patch feature, broken by recent change." "RG" NIL) (23 "Change file-system type and default device properties at site-option time, not FS:GET-PATHNAME-HOST time." "RpK" NIL) (24 "The 3com microcode does not check the bits the 3com board sets to indicate that the received packet had FCS or framing errors. Neither does the routine chaos:lambda-get-next-packet. Thus, if the 3com receives a bad packet, the chaos code won't know. The microcode should probably not pass such packets up, but it is easy enough to discard them in lambda-get-next-pkt..." "pld" NIL) (25 "Fix PAINFUL problem in scheduler. This is not the new scheduler which will appear in 122." "RG" NIL) (26 "*New* *Improved* rubout handler command c-sh-! (control exclamation) RH-COM-COMPLETE-FROM-HISTORY completes the typein so far with a match from the typein history." "jrm" NIL) (27 "MRC's fix to LISP-REINITIALIZE to allow (disk-restore ...) to work" "pld" NIL) (28 "Fix Common Lisp ``named'' vector DEFSTRUCTs. LISPM-ARRAY-FOR-DEFSTRUCT needs to be put out to pasture..." "RpK" NIL) (29 "Fix bug in FSIGNAL and other minor fixups in error handler." "rg" NIL) (30 "RH-COM-COMPLETE-FROM-HISTORY now takes a numeric argument. Example: c-3 c-! gets the third completion. RH-COM-COMPLETE-FROM-HISTORY-NEXT-COMPLETION (m-!) cycles through the completions. It wraps at the end, and also accepts numeric args (m-- m-! will go to the previous completion.)" "jrm" NIL) (31 "Avoid bombout attempting to determine owner of shared device if sys-conf not available." "rg" NIL) (32 "Add some macros to the SYSTEM package: MESSAGECASE, REQUIRE-CHARACTER, DEFINE-FUNCTIONAL-STREAM, DEFINE-SELECT-STREAM, CALL-STREAM-DEFAULT-HANDLER, CHECK-SYSTEM-PARAMETER, DEFINE-PARAMETER-CHECKER, CONSING-IN-AREA. These are used to hide some LMI Zetalisp implementation details." "RpK" NIL) (33 "Various patches from MIT. See beginning of patch file if your interested in more details." "RG" NIL) (34 "Fix bug recently introduced in call-macro-expander function. Could result in incorrect macro expansion." "rg" NIL) (35 "Mostly Brand S compatible DEFGENERIC." "RpK" NIL) (36 "When IMPORT gets a name conflict, the ``import new'' and ``retain old'' alternatives each get a separate user proceed command, instead of sharing one and then choosing I or R. Warn about too many else clauses for LISP:IF and rewrite if neccessary. This is meant to catch losing callers in system code and will be withdrawn all soon as all -*- Readtable: CL -*- system source files have been recompiled." "RpK" NIL) (37 "Make alternate macro definition for LET-IF (gag)" "jrm" NIL) (38 "Alternate macro definition for DEFSUBST" "jrm" NIL) (39 "SI::PROCLAIM-SPECIAL, SI::PROCLAIM-UNSPECIAL, SI::PROCLAIMED-SPECIAL-P to deal with global specialness, now uses plist as before, but may change in the future." "jrm" NIL) (40 "Fix (:PROPERTY DO*-NAMED SI::ALTERNATE-MACRO-DEFINITION) to not use old form of PROG*." "jrm" NIL) (41 "Fix double evaluation brain damage in QCFILE, remove toupe from COMPILE-PROCLAIM (a toupe is unnecessary hair)." "jrm" NIL) (42 "Fix alternate macro definition of DO and its relatives for once and for all." "jrm" NIL) (43 "Fix bug in (PROCLAIM '(DECLARATION FOO))" "jrm" NIL) (44 "Fix bug in previous patch, system-constants are special." "jrm" NIL) (45 "Fix brain death in do* defprop." "jrm" NIL) (46 "Fixed SUB-APROPOS so that is correctly deals with APROPOS-NO-DUPLICATES." "naha" NIL) (47 "ALTERNATE-MACRO-DEFINITIONS for ENCAPSULATION-LET and RETURN-LIST." "jrm" NIL) (48 "Wholine package now displays either single or double colon depending on the state of SI::*READ-SINGLE-COLON-ALLOW-INTERNAL-SYMBOL*." "jrm" NIL) (49 "added the function DISK-PARTITION-COMMENT-STRING because I wanted it. It's well worth its weight in sliced bread." "naha" NIL) (50 "SI::*READ-BARF-IF-AUTO-EXPORT?* controls whether the reader is allowed to intern symbols in an auto-exporting package." "jrm" NIL) (51 "Add ALTERNATE-MACRO-DEFINITIONS for ADVICE." "jrm" NIL) (52 "Congress broke the time so I had to fix it. Does anyone know if they broke October also?" "naha" NIL) (53 "sublis-eval-once was broken (so what else is new?)" "EFH" NIL) (54 "fix compiler:breakoff to not screw up the lexical variable which holds the throw tag for return froms out of lexical closures in some obscure and hairy cases don't ask me i just work here. -EFH" "naha" NIL) (55 "Metering runs with GC turned off. Unfortunately, when you resume GC and then want to start metering again, the GC does not get turned off again." "pld" NIL) (56 "really fix the time by putting the ) where it belongs." "naha" NIL) (57 "Another time bug. \"It's not my fault\"" "naha" NIL) (58 "Fix funcalling of special form in DEFTYPE." "jrm" NIL) (59 "Fix problem with *P1VALUE* when compiling LET* that has one form in its body." "Rauen" NIL) (60 "Daylight savings time was in effect ONLY during certain weeks of April and October." "pld" NIL) (61 "Nobody seems to know where the patches live." "rauen" NIL) (62 "Fix the DO macros for the postultimate time." "rauen" NIL) (63 "Post-postultimate fix of alternate macro definitions for DO, DO*, DO-NAMED, and DO*-NAMED. Now they enclose blocks named NIL, and can be returned from." "rauen" NIL) (64 "Foreign window being set wrong when connection opens." "erRic" NIL) (65 "Restore commented out line in chaos:get-next-pkt that (partially) controlled when an acknowledgement was generated." "HLC" NIL) (66 "Fix Chaosnet \"File Input\" and \"Host Down\" hangs: When remote side indicates in a STS that all outstanding packets have been received -- but not all are acknowledged, and the subsequent acknowledgement is lot, chaos:retransmission can't retransmit, as no packets remain. It should send a SNS to elicit an up-to-date STS." "HLC" NIL) ))