1
0
mirror of synced 2026-03-31 04:10:58 +00:00

Compare commits

...

4 Commits

Author SHA1 Message Date
Matt Heffron
39ee2ecb5d Merge pull request #1518 from Interlisp/mth1--a-few-UNICODE-cleanups
A few fixes to UNICODE that I stumbled across.
2024-01-26 16:12:25 -08:00
Matt Heffron
a90b7ed73d A few fixes to UNICODE that I stumbled across.
READ-UNICODE-MAPPING-FILENAMES returned a bare string if FILESPEC matched 1 file (first clause of the (OR...) in join), this caused READ-UNICODE-MAPPING to fail.
SHOWCHARS referenced variable CODE that should have been C
Added FILETYPE property to UNICODE to specify TCOMPL compiler.
(Other changes are formatting by pretty printer, not mine.)
2024-01-26 14:38:04 -08:00
rmkaplan
54b2607070 Removed STORAGE.LCOM (#1511) 2024-01-19 23:53:12 -08:00
rmkaplan
971e8936b6 Replace \TEDIT.FORMATTED1 with TEDIT.FORMATTEDFILEP (#1508)
Internal \TEDIT.FORMATTED1 is being decommissioned
2024-01-19 21:49:45 -08:00
6 changed files with 140 additions and 148 deletions

View File

@@ -1,18 +1,20 @@
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
(FILECREATED " 8-Jan-2024 10:58:06" {WMEDLEY}<library>UNICODE.;212 72240
(FILECREATED "26-Jan-2024 14:19:50" {LIB}UNICODE.;4 72688
:EDIT-BY rmk
:EDIT-BY "mth"
:CHANGES-TO (FNS NUTF8CODEBYTES)
:CHANGES-TO (FNS MAKE-UNICODE-FORMATS MAKE-UNICODE-TRANSLATION-TABLES SHOWCHARS
READ-UNICODE-MAPPING-FILENAMES)
(VARS UNICODECOMS)
:PREVIOUS-DATE " 5-Jan-2024 17:25:29" {WMEDLEY}<library>UNICODE.;211)
:PREVIOUS-DATE " 8-Jan-2024 10:58:06" {LIB}UNICODE.;1)
(PRETTYCOMPRINT UNICODECOMS)
(RPAQQ UNICODECOMS
[(COMS
((COMS
(* ;; "External formats")
(FNS UTF8.OUTCHARFN UTF8.INCCODEFN UTF8.PEEKCCODEFN \UTF8.BACKCCODEFN)
@@ -61,7 +63,7 @@
XCCSSTRING)
(FNS \UTF8.FETCHCODE)
(FNS SHOWCHARS)
(DECLARE%: EVAL@COMPILE DONTCOPY (FILES (FROM LOADUPS)
[DECLARE%: EVAL@COMPILE DONTCOPY (FILES (FROM LOADUPS)
EXPORTS.ALL)
(* ;; "These control the layout of the translation tables. Since many of the upper panels are sparse, doing it per-panel (128) seems more space-efficient, and residual alists can be shorter")
@@ -70,7 +72,9 @@
(MAX-ALIST-LENGTH 10)
(N-TRANSLATION-SEGMENTS (IQUOTIENT 65536 TRANSLATION-SEGMENT-SIZE))
(TRANSLATION-SHIFT (INTEGERLENGTH (SUB1 TRANSLATION-SEGMENT-SIZE)))
(TRANSLATION-MASK (SUB1 TRANSLATION-SEGMENT-SIZE])
(TRANSLATION-MASK (SUB1 TRANSLATION-SEGMENT-SIZE]
(PROP (FILETYPE)
UNICODE)))
@@ -528,16 +532,19 @@
(DEFINEQ
(READ-UNICODE-MAPPING-FILENAMES
[LAMBDA (FILESPEC DIRS) (* ; "Edited 5-Jan-2024 17:24 by rmk")
[LAMBDA (FILESPEC DIRS) (* ; "Edited 26-Jan-2024 14:02 by mth")
(* ; "Edited 5-Jan-2024 17:24 by rmk")
(* ; "Edited 5-Aug-2020 15:59 by kaplan")
(* ; "Edited 4-Aug-2020 17:31 by rmk:")
(DECLARE (USEDFREE UNICODEDIRECTORIES XCCS-SET-NAMES))
(CL:UNLESS DIRS (SETQ DIRS UNICODEDIRECTORIES))
(FOR F X CSI INSIDE FILESPEC JOIN
(* ;;
 "Last case hopes to pick up tables that are gruped together in a subdirectory (e.g. JIS)")
(OR (FINDFILE (PACKFILENAME 'BODY F 'EXTENSION 'TXT)
T DIRS)
(OR (MKLIST (FINDFILE (PACKFILENAME 'BODY F 'EXTENSION
'TXT)
T DIRS))
(for D inside DIRS
when (SETQ D (FILDIR (PACKFILENAME 'NAME
(CONCAT "XCCS-*=" F)
@@ -876,7 +883,7 @@
(DEFINEQ
(MAKE-UNICODE-TRANSLATION-TABLES
[LAMBDA (MAPPING LTORVAR RTOLVAR) (* ; "Edited 21-Aug-2021 13:12 by rmk:")
[LAMBDA (MAPPING LTORVAR RTOLVAR) (* ; "Edited 21-Aug-2021 13:12 by rmk:")
(* ; "Edited 17-Aug-2020 08:46 by rmk:")
(* ;; "MAPPING is the list of numeric code correspondence pairs constructed by applying READ-UNICODE-MAPPING to a Unicode mapping file.")
@@ -902,7 +909,7 @@
(* ;; "")
(* ;;
 "An unmapped XCCS character is assigned a code in the %"private use%" code blocks 0xE000-F8FF")
 "An unmapped XCCS character is assigned a code in the %"private use%" code blocks 0xE000-F8FF")
(* ;; "")
@@ -918,75 +925,67 @@
(* ;; "The left-to-right direction (into Unicode). We start by distributing the mappings into alists in arrays indexed by the higher-order (charaset set byte). The second loop converts long alists into arrays.")
[FOR M LEFTC RBASE RCODES IN MAPPING EACHTIME (SETQ RCODES (CDR M))
(SETQ RBASE (CAR RCODES))
(SETQ RBASE (CAR RCODES))
UNLESS (IGEQ RBASE MISSINGCODE) DO (SETQ LEFTC (CAR M))
(* ;;
 "(CDR RCODES) contains combiners on the base")
(* ;; "(CDR RCODES) contains combiners on the base")
(CL:PUSH (CONS (LOGAND LEFTC TRANSLATION-MASK)
(CL:IF (CDR RCODES)
RCODES
RBASE))
(CL:SVREF LTORARRAY (LRSH LEFTC
TRANSLATION-SHIFT
]
(CL:PUSH (CONS (LOGAND LEFTC TRANSLATION-MASK)
(CL:IF (CDR RCODES)
RCODES
RBASE))
(CL:SVREF LTORARRAY (LRSH LEFTC
TRANSLATION-SHIFT]
(FOR I CSA FROM 0 TO (SUB1 N-TRANSLATION-SEGMENTS)
WHEN (IGREATERP (LENGTH (CL:SVREF LTORARRAY I))
MAX-ALIST-LENGTH)
DO
MAX-ALIST-LENGTH) DO
(* ;; "Leave it alone if the alist is short")
(* ;; "Leave it alone if the alist is short")
(SETQ CSA (CL:MAKE-ARRAY TRANSLATION-SEGMENT-SIZE :INITIAL-ELEMENT NIL))
(FOR P IN (CL:SVREF LTORARRAY I)
DO (CL:SETF (CL:SVREF CSA (LOGAND (CAR P)
TRANSLATION-MASK))
(CDR P)))
(CL:SETF (CL:SVREF LTORARRAY I)
CSA))
(SETQ CSA (CL:MAKE-ARRAY TRANSLATION-SEGMENT-SIZE
:INITIAL-ELEMENT NIL))
(FOR P IN (CL:SVREF LTORARRAY I)
DO (CL:SETF (CL:SVREF CSA (LOGAND (CAR P)
TRANSLATION-MASK))
(CDR P)))
(CL:SETF (CL:SVREF LTORARRAY I)
CSA))
(* ;; "")
(* ;; "Now the right-to-left direction (from Unicode). Here we have to detect and compensate for ambiguity.")
(FOR M LEFTC RBASE RCOMBINERS PREV IN MAPPING EACHTIME (SETQ RBASE (CADR M))
(SETQ RCOMBINERS (CDDR M))
(SETQ RCOMBINERS (CDDR M))
UNLESS (OR (IGEQ RBASE MISSINGCODE)
RCOMBINERS) DO
RCOMBINERS) DO
(* ;;
 "Have we already seen an explicit mapping from right to left?")
(* ;;
 "Have we already seen an explicit mapping from right to left?")
(SETQ LEFTC (CAR M))
[SETQ PREV (ASSOC (LOGAND RBASE TRANSLATION-MASK)
(CL:SVREF RTOLARRAY (LRSH RBASE
TRANSLATION-SHIFT
]
(IF (NULL PREV)
THEN (CL:PUSH (CONS (LOGAND RBASE
TRANSLATION-MASK)
LEFTC)
(CL:SVREF RTOLARRAY (LRSH RBASE
TRANSLATION-SHIFT
)))
ELSEIF (IGREATERP (CDR PREV)
LEFTC)
THEN (RPLACD PREV LEFTC)))
(SETQ LEFTC (CAR M))
[SETQ PREV (ASSOC (LOGAND RBASE TRANSLATION-MASK)
(CL:SVREF RTOLARRAY (LRSH RBASE
TRANSLATION-SHIFT]
(IF (NULL PREV)
THEN (CL:PUSH (CONS (LOGAND RBASE TRANSLATION-MASK)
LEFTC)
(CL:SVREF RTOLARRAY (LRSH RBASE
TRANSLATION-SHIFT)))
ELSEIF (IGREATERP (CDR PREV)
LEFTC)
THEN (RPLACD PREV LEFTC)))
(FOR I CSA FROM 0 TO (SUB1 N-TRANSLATION-SEGMENTS)
WHEN (IGREATERP (LENGTH (CL:SVREF RTOLARRAY I))
MAX-ALIST-LENGTH)
DO
MAX-ALIST-LENGTH) DO
(* ;; "Long list, make an array")
(* ;; "Long list, make an array")
(SETQ CSA (CL:MAKE-ARRAY TRANSLATION-SEGMENT-SIZE :INITIAL-ELEMENT NIL))
(FOR P IN (CL:SVREF RTOLARRAY I)
DO (CL:SETF (CL:SVREF CSA (LOGAND (CAR P)
TRANSLATION-MASK))
(CDR P)))
(CL:SETF (CL:SVREF RTOLARRAY I)
CSA))
(SETQ CSA (CL:MAKE-ARRAY TRANSLATION-SEGMENT-SIZE
:INITIAL-ELEMENT NIL))
(FOR P IN (CL:SVREF RTOLARRAY I)
DO (CL:SETF (CL:SVREF CSA (LOGAND (CAR P)
TRANSLATION-MASK))
(CDR P)))
(CL:SETF (CL:SVREF RTOLARRAY I)
CSA))
(* ;; "")
@@ -1285,14 +1284,15 @@
(DEFINEQ
(SHOWCHARS
[LAMBDA (FROMCHAR TOCHAR FONT) (* ; "Edited 1-Aug-2020 09:27 by rmk:")
[LAMBDA (FROMCHAR TOCHAR FONT) (* ; "Edited 26-Jan-2024 14:18 by mth")
(* ; "Edited 1-Aug-2020 09:27 by rmk:")
(RESETFORM (DSPFONT (OR FONT '(CLASSIC 12))
T)
(CL:WHEN (AND (SMALLP FROMCHAR)
(NOT TOCHAR))
(* ;;
 "If a small number, assume it's an octal (in decimal) character set, no need for string quotes")
 "If a small number, assume it's an octal (in decimal) character set, no need for string quotes")
(SETQ TOCHAR (CONCAT FROMCHAR "," 376))
(SETQ FROMCHAR (CONCAT FROMCHAR "," 41)))
@@ -1302,16 +1302,16 @@
(SETQ TOCHAR (CL:IF TOCHAR
(CHARCODE.DECODE TOCHAR)
FROMCHAR)))
(FOR C FROM FROMCHAR TO TOCHAR UNLESS (AND (IGEQ (LOGAND C 255)
127)
(ILEQ (LOGAND C 255)
(PLUS 128 33)))
DO (PRINTOUT T .P2 (CONCAT (OCTALSTRING (LRSH CODE 8))
","
(OCTALSTRING (LOGAND CODE 255)))
10
(CHARACTER C)
T])
(for C from FROMCHAR to TOCHAR unless (AND (IGEQ (LOGAND C 255)
127)
(ILEQ (LOGAND C 255)
(PLUS 128 33)))
do (PRINTOUT T .P2 (CONCAT (OCTALSTRING (LRSH C 8))
","
(OCTALSTRING (LOGAND C 255)))
10
(CHARACTER C)
T])
)
(DECLARE%: EVAL@COMPILE DONTCOPY
@@ -1338,17 +1338,19 @@
(TRANSLATION-MASK (SUB1 TRANSLATION-SEGMENT-SIZE)))
)
)
(PUTPROPS UNICODE FILETYPE :TCOMPL)
(DECLARE%: DONTCOPY
(FILEMAP (NIL (3950 18041 (UTF8.OUTCHARFN 3960 . 6791) (UTF8.INCCODEFN 6793 . 12283) (UTF8.PEEKCCODEFN
12285 . 17059) (\UTF8.BACKCCODEFN 17061 . 18039)) (18042 21823 (UTF16BE.OUTCHARFN 18052 . 18876) (
UTF16BE.INCCODEFN 18878 . 19777) (UTF16BE.PEEKCCODEFN 19779 . 20850) (\UTF16BE.BACKCCODEFN 20852 .
21821)) (21853 24134 (MAKE-UNICODE-FORMATS 21863 . 24132)) (24231 25537 (UNICODE.UNMAPPED 24241 .
25535)) (25538 26214 (XCCS-UTF8-AFTER-OPEN 25548 . 26212)) (27670 28019 (XTOUCODE 27680 . 27848) (
UTOXCODE 27850 . 28017)) (28059 44757 (READ-UNICODE-MAPPING-FILENAMES 28069 . 30519) (
READ-UNICODE-MAPPING 30521 . 33497) (WRITE-UNICODE-MAPPING 33499 . 37249) (WRITE-UNICODE-INCLUDED
37251 . 41973) (WRITE-UNICODE-MAPPING-HEADER 41975 . 43223) (WRITE-UNICODE-MAPPING-FILENAME 43225 .
44755)) (48071 56550 (MAKE-UNICODE-TRANSLATION-TABLES 48081 . 56548)) (57055 68253 (UTF-8.VALIDATE
57065 . 60067) (HEXSTRING 60069 . 61230) (UTF8HEXSTRING 61232 . 63437) (NUTF8CODEBYTES 63439 . 64392)
(NUTF8STRINGBYTES 64394 . 64875) (XTOUSTRING 64877 . 67888) (XCCSSTRING 67890 . 68251)) (68254 70058 (
\UTF8.FETCHCODE 68264 . 70056)) (70059 71528 (SHOWCHARS 70069 . 71526)))))
(FILEMAP (NIL (4111 18202 (UTF8.OUTCHARFN 4121 . 6952) (UTF8.INCCODEFN 6954 . 12444) (UTF8.PEEKCCODEFN
12446 . 17220) (\UTF8.BACKCCODEFN 17222 . 18200)) (18203 21984 (UTF16BE.OUTCHARFN 18213 . 19037) (
UTF16BE.INCCODEFN 19039 . 19938) (UTF16BE.PEEKCCODEFN 19940 . 21011) (\UTF16BE.BACKCCODEFN 21013 .
21982)) (22014 24295 (MAKE-UNICODE-FORMATS 22024 . 24293)) (24392 25698 (UNICODE.UNMAPPED 24402 .
25696)) (25699 26375 (XCCS-UTF8-AFTER-OPEN 25709 . 26373)) (27831 28180 (XTOUCODE 27841 . 28009) (
UTOXCODE 28011 . 28178)) (28220 45174 (READ-UNICODE-MAPPING-FILENAMES 28230 . 30936) (
READ-UNICODE-MAPPING 30938 . 33914) (WRITE-UNICODE-MAPPING 33916 . 37666) (WRITE-UNICODE-INCLUDED
37668 . 42390) (WRITE-UNICODE-MAPPING-HEADER 42392 . 43640) (WRITE-UNICODE-MAPPING-FILENAME 43642 .
45172)) (48488 56912 (MAKE-UNICODE-TRANSLATION-TABLES 48498 . 56910)) (57417 68615 (UTF-8.VALIDATE
57427 . 60429) (HEXSTRING 60431 . 61592) (UTF8HEXSTRING 61594 . 63799) (NUTF8CODEBYTES 63801 . 64754)
(NUTF8STRINGBYTES 64756 . 65237) (XTOUSTRING 65239 . 68250) (XCCSSTRING 68252 . 68613)) (68616 70420 (
\UTF8.FETCHCODE 68626 . 70418)) (70421 71931 (SHOWCHARS 70431 . 71929)))))
STOP

Binary file not shown.

Binary file not shown.

View File

@@ -1,18 +1,14 @@
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
(FILECREATED "18-Oct-2023 17:45:46" {WMEDLEY}<lispusers>COMPARETEXT.;131 48661
(FILECREATED "14-Jan-2024 13:20:30" {WMEDLEY}<lispusers>COMPARETEXT.;133 48539
:EDIT-BY rmk
:CHANGES-TO (FNS IMCOMPARE.COLLECT.HASH.CHUNKS IMCOMPARE.HASH)
:CHANGES-TO (FNS IMCOMPARE.COLLECT.HASH.CHUNKS)
:PREVIOUS-DATE " 2-Nov-2022 10:08:52" {WMEDLEY}<lispusers>COMPARETEXT.;130)
:PREVIOUS-DATE "14-Jan-2024 13:11:44" {WMEDLEY}<lispusers>COMPARETEXT.;132)
(* ; "
Copyright (c) 1984-1985, 1993, 1998 by Xerox Corporation.
")
(PRETTYCOMPRINT COMPARETEXTCOMS)
(RPAQQ COMPARETEXTCOMS
@@ -295,7 +291,8 @@ Copyright (c) 1984-1985, 1993, 1998 by Xerox Corporation.
TITLE TEXTWIDTH TEXTHEIGHT])
(IMCOMPARE.COLLECT.HASH.CHUNKS
[LAMBDA (CHUNK HASH.TYPE) (* ; "Edited 18-Oct-2023 17:45 by rmk")
[LAMBDA (CHUNK HASH.TYPE) (* ; "Edited 14-Jan-2024 13:20 by rmk")
(* ; "Edited 18-Oct-2023 17:45 by rmk")
(* ; "Edited 20-Jan-2022 23:09 by rmk")
(* ; "Edited 24-Dec-2021 22:30 by rmk")
(* ; "Edited 13-Dec-2021 16:32 by rmk")
@@ -304,19 +301,19 @@ Copyright (c) 1984-1985, 1993, 1998 by Xerox Corporation.
(* ;;; "Returns a list of the chunks inside CHUNK as hashed of type HASH.TYPE. Presumably CHUNK is is higher on the ranking PARA > LINE >. WORD. The initial CHUNK covers the whole file, middle-mouse refinement-chunks cover only subsections.")
(* ;; "It is overkill to open raw text streams as TEDIT stream. So we open, test for TEDIT and if so, close and reoopen. TEDIT may not yet honor external formats other than XCCS for rawtext files.")
(* ;; "It is overkill to open raw text streams as TEDIT stream. So we open, test for TEDIT and if so, close and reoopen. ")
(RESETLST
(BIND (FILENAME _ (fetch (IMCOMPARE.CHUNK FILENAME) of CHUNK))
STREAM ENDPOS FIRST [RESETSAVE [SETQ STREAM (OPENSTREAM FILENAME 'INPUT 'OLD
'((ENDOFSTREAMOP NILL]
'(PROGN (CLOSEF? OLDVALUE]
(CL:WHEN (\TEDIT.FORMATTEDP1 STREAM)
(CL:WHEN (TEDIT.FORMATTEDFILEP STREAM)
(* ;
 "The OBJECTCHAR is produced in place of image objects")
[RESETSAVE [SETQ STREAM
(OPENTEXTSTREAM STREAM NIL NIL NIL
`(OBJECTBYTE ,(CHARCODE NULL]
`(OBJECTBYTE ,(CHARCODE *]
'(PROGN (CLOSEF? OLDVALUE])
(SETFILEINFO STREAM 'EOL 'ANY)
(CL:UNLESS (fetch (IMCOMPARE.CHUNK CHUNKLENGTH) of CHUNK)
@@ -782,14 +779,13 @@ Copyright (c) 1984-1985, 1993, 1998 by Xerox Corporation.
(FILESLOAD (LOADCOMP)
GRAPHER)
)
(PUTPROPS COMPARETEXT COPYRIGHT ("Xerox Corporation" 1984 1985 1993 1998))
(DECLARE%: DONTCOPY
(FILEMAP (NIL (1318 40954 (COMPARETEXT 1328 . 2968) (COMPARETEXT.WINDOW 2970 . 6768) (
COMPARETEXT.TSTREAM 6770 . 9991) (COMPARETEXT.SETSEL 9993 . 10898) (CHUNKNODELABEL 10900 . 12021) (
IMCOMPARE.BOXNODE 12023 . 12999) (IMCOMPARE.CHUNKS 13001 . 17609) (IMCOMPARE.COLLECT.HASH.CHUNKS 17611
. 20723) (IMCOMPARE.DISPLAYGRAPH 20725 . 28804) (IMCOMPARE.HASH 28806 . 33164) (
IMCOMPARE.MERGE.CONNECTED.CHUNKS 33166 . 36662) (IMCOMPARE.MERGE.UNCONNECTED.CHUNKS 36664 . 38619) (
IMCOMPARE.SHOW.DIST 38621 . 39067) (IMCOMPARE.UPDATE.SYMBOL.TABLE 39069 . 40952)) (40955 47439 (
IMCOMPARE.LEFTBUTTONFN 40965 . 43869) (IMCOMPARE.MIDDLEBUTTONFN 43871 . 46987) (IMCOMPARE.COPYBUTTONFN
46989 . 47437)) (47492 48183 (TAIL1 47502 . 47856) (TAIL2 47858 . 48181)))))
(FILEMAP (NIL (1234 40907 (COMPARETEXT 1244 . 2884) (COMPARETEXT.WINDOW 2886 . 6684) (
COMPARETEXT.TSTREAM 6686 . 9907) (COMPARETEXT.SETSEL 9909 . 10814) (CHUNKNODELABEL 10816 . 11937) (
IMCOMPARE.BOXNODE 11939 . 12915) (IMCOMPARE.CHUNKS 12917 . 17525) (IMCOMPARE.COLLECT.HASH.CHUNKS 17527
. 20676) (IMCOMPARE.DISPLAYGRAPH 20678 . 28757) (IMCOMPARE.HASH 28759 . 33117) (
IMCOMPARE.MERGE.CONNECTED.CHUNKS 33119 . 36615) (IMCOMPARE.MERGE.UNCONNECTED.CHUNKS 36617 . 38572) (
IMCOMPARE.SHOW.DIST 38574 . 39020) (IMCOMPARE.UPDATE.SYMBOL.TABLE 39022 . 40905)) (40908 47392 (
IMCOMPARE.LEFTBUTTONFN 40918 . 43822) (IMCOMPARE.MIDDLEBUTTONFN 43824 . 46940) (IMCOMPARE.COPYBUTTONFN
46942 . 47390)) (47445 48136 (TAIL1 47455 . 47809) (TAIL2 47811 . 48134)))))
STOP

View File

@@ -1,20 +1,13 @@
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
(FILECREATED "20-Jul-2022 19:55:30" {DSK}<home>larry>medley>sources>MACHINEINDEPENDENT.;4 117970
(FILECREATED "18-Jan-2024 10:40:56" {WMEDLEY}<sources>MACHINEINDEPENDENT.;38 117576
:CHANGES-TO (VARS MACHINEINDEPENDENTCOMS)
(FNS UNSAFE.TO.MODIFY)
:EDIT-BY rmk
:PREVIOUS-DATE "20-Jul-2022 15:26:15" {DSK}<home>larry>medley>sources>MACHINEINDEPENDENT.;3)
:CHANGES-TO (FNS LISPSOURCEFILEP)
:PREVIOUS-DATE "20-Jul-2022 19:55:30" {WMEDLEY}<sources>MACHINEINDEPENDENT.;36)
(* ; "
Copyright (c) 1983-1991, 2021-2022 by Venue & Xerox Corporation.
The following program was created in 1983 but has not been published
within the meaning of the copyright law, is furnished under license,
and may not be used, copied and/or disclosed except in accordance
with the terms of said license.
")
(PRETTYCOMPRINT MACHINEINDEPENDENTCOMS)
@@ -1665,6 +1658,8 @@ WRITEFILE OF ")
(LISPSOURCEFILEP
[LAMBDA (FILE)
(* ;; "Edited 18-Jan-2024 10:40 by rmk")
(* ;; "Edited 22-May-2022 09:49 by rmk: If FILE is a stream but not open for input, open it")
(* ;; "Edited 9-Jul-2021 22:12 by rmk:")
@@ -1676,16 +1671,17 @@ WRITEFILE OF ")
(GETSTREAM FILE 'INPUT T))
[RESETSAVE NIL (LIST 'CLOSEF (SETQ FILE (OPENSTREAM FILE 'INPUT])
(CL:WHEN (RANDACCESSP FILE)
(LET ((HERE (GETFILEPTR FILE)))
(CL:MULTIPLE-VALUE-BIND (ENV MAP)
[\PARSE-FILE-HEADER FILE (FUNCTION (LAMBDA (STREAM)
(LET ((HERE (GETFILEPTR FILE))
ENV MAP)
[NLSETQ (CL:MULTIPLE-VALUE-SETQ (ENV MAP)
(\PARSE-FILE-HEADER FILE (FUNCTION (LAMBDA (STREAM)
(* ;
 "Pointed now right after the FILECREATED expression")
(CAR (NLSETQ (SKREAD STREAM)
(SKREAD STREAM)
(FIXP (READ STREAM]
(SETFILEPTR FILE HERE)
(CL:VALUES ENV MAP)))))])
(CAR (NLSETQ (SKREAD STREAM)
(SKREAD STREAM)
(FIXP (READ STREAM]
(SETFILEPTR FILE HERE)
(CL:VALUES ENV MAP))))])
(LISPFILETYPE
[LAMBDA (FILE) (* ; "Edited 22-May-2022 13:18 by rmk")
@@ -2466,26 +2462,24 @@ This has little hope of working any more.")
(LOCALVARS . T)
)
(PUTPROPS MACHINEINDEPENDENT COPYRIGHT ("Venue & Xerox Corporation" T 1983 1984 1985 1986 1987 1988
1989 1990 1991 2021 2022))
(DECLARE%: DONTCOPY
(FILEMAP (NIL (12904 26329 (LOAD? 12914 . 14765) (FILESLOAD 14767 . 15056) (DOFILESLOAD 15058 . 22684)
(FINDFILE-WITH-EXTENSIONS 22686 . 25885) (READ-FILECREATED 25887 . 26327)) (26446 31767 (DMPHASH
26456 . 28050) (HASHOVERFLOW 28052 . 31765)) (32523 64631 (BKBUFS 32533 . 33652) (CHANGENAME 33654 .
33915) (CHNGNM 33917 . 35765) (CLBUFS 35767 . 37040) (DEFINE 37042 . 37766) (FNS.PUTDEF 37768 . 41183)
(EQMEMB 41185 . 41367) (EQUALN 41369 . 42198) (FNCHECK 42200 . 44207) (FNTYP1 44209 . 44306) (LCSKIP
44308 . 45152) (MAPRINT 45154 . 46100) (MKLIST 46102 . 46252) (NAMEFIELD 46254 . 47779) (NLIST 47781
. 48116) (PRINTBELLS 48118 . 48244) (PROMPTCHAR 48246 . 50136) (RAISEP 50138 . 50399) (READFILE 50401
. 52745) (READLINE 52747 . 58187) (REMPROPLIST 58189 . 59077) (RESETBUFS 59079 . 59529) (TAB 59531 .
60127) (UNSAVED1 60129 . 61234) (WRITEFILE 61236 . 62978) (CLOSE-AND-MAYBE-DELETE 62980 . 63324) (
UNSAFE.TO.MODIFY 63326 . 64629)) (66986 69930 (FILEDATE 66996 . 69928)) (70160 97262 (FILEMAP 70170 .
70640) (\PARSE-FILE-HEADER 70642 . 74457) (GET-ENVIRONMENT-AND-FILEMAP 74459 . 76686) (
LOOKUP-ENVIRONMENT-AND-FILEMAP 76688 . 78879) (GET-FILEMAP-FROM-FILECREATED 78881 . 79705) (
\FILEMAP-HASHOVERFLOW 79707 . 84371) (FLUSHFILEMAPS 84373 . 84996) (LISPSOURCEFILEP 84998 . 86289) (
LISPFILETYPE 86291 . 89540) (GETFILEMAP 89542 . 89961) (PUTFILEMAP 89963 . 92154) (UPDATEFILEMAP 92156
. 97260)) (97928 101514 (LVLPRINT 97938 . 98111) (LVLPRIN1 98113 . 98295) (LVLPRIN2 98297 . 98529) (
LVLPRIN 98531 . 99545) (LVLPRIN0 99547 . 101512)) (101548 106465 (FLUSHRIGHT 101558 . 102373) (
PRINTPARA 102375 . 103473) (PRINTPARA1 103475 . 106463)) (106501 108786 (SUBLIS 106511 . 107119) (
SUBPAIR 107121 . 108349) (DSUBLIS 108351 . 108784)) (108809 109409 (CONSTANTOK 108819 . 109407)) (
111162 111867 (NLAMBDA.ARGS 111172 . 111865)))))
(FILEMAP (NIL (12537 25962 (LOAD? 12547 . 14398) (FILESLOAD 14400 . 14689) (DOFILESLOAD 14691 . 22317)
(FINDFILE-WITH-EXTENSIONS 22319 . 25518) (READ-FILECREATED 25520 . 25960)) (26079 31400 (DMPHASH
26089 . 27683) (HASHOVERFLOW 27685 . 31398)) (32156 64264 (BKBUFS 32166 . 33285) (CHANGENAME 33287 .
33548) (CHNGNM 33550 . 35398) (CLBUFS 35400 . 36673) (DEFINE 36675 . 37399) (FNS.PUTDEF 37401 . 40816)
(EQMEMB 40818 . 41000) (EQUALN 41002 . 41831) (FNCHECK 41833 . 43840) (FNTYP1 43842 . 43939) (LCSKIP
43941 . 44785) (MAPRINT 44787 . 45733) (MKLIST 45735 . 45885) (NAMEFIELD 45887 . 47412) (NLIST 47414
. 47749) (PRINTBELLS 47751 . 47877) (PROMPTCHAR 47879 . 49769) (RAISEP 49771 . 50032) (READFILE 50034
. 52378) (READLINE 52380 . 57820) (REMPROPLIST 57822 . 58710) (RESETBUFS 58712 . 59162) (TAB 59164 .
59760) (UNSAVED1 59762 . 60867) (WRITEFILE 60869 . 62611) (CLOSE-AND-MAYBE-DELETE 62613 . 62957) (
UNSAFE.TO.MODIFY 62959 . 64262)) (66619 69563 (FILEDATE 66629 . 69561)) (69793 96996 (FILEMAP 69803 .
70273) (\PARSE-FILE-HEADER 70275 . 74090) (GET-ENVIRONMENT-AND-FILEMAP 74092 . 76319) (
LOOKUP-ENVIRONMENT-AND-FILEMAP 76321 . 78512) (GET-FILEMAP-FROM-FILECREATED 78514 . 79338) (
\FILEMAP-HASHOVERFLOW 79340 . 84004) (FLUSHFILEMAPS 84006 . 84629) (LISPSOURCEFILEP 84631 . 86023) (
LISPFILETYPE 86025 . 89274) (GETFILEMAP 89276 . 89695) (PUTFILEMAP 89697 . 91888) (UPDATEFILEMAP 91890
. 96994)) (97662 101248 (LVLPRINT 97672 . 97845) (LVLPRIN1 97847 . 98029) (LVLPRIN2 98031 . 98263) (
LVLPRIN 98265 . 99279) (LVLPRIN0 99281 . 101246)) (101282 106199 (FLUSHRIGHT 101292 . 102107) (
PRINTPARA 102109 . 103207) (PRINTPARA1 103209 . 106197)) (106235 108520 (SUBLIS 106245 . 106853) (
SUBPAIR 106855 . 108083) (DSUBLIS 108085 . 108518)) (108543 109143 (CONSTANTOK 108553 . 109141)) (
110896 111601 (NLAMBDA.ARGS 110906 . 111599)))))
STOP

Binary file not shown.