Skip to content

Commit 50dc0a9

Browse files
rmkaplanmasinter
andauthored
Remove calls to openfile (#1333)
* Remove calls to OPENFILE OPENFILE is a residual Interlisp function that returns a litatom instead of a stream. In almost all cases, this immediate causes an error that litatom files are no longer supported. I have found (FINDCALLERS) all the examples in lispusers/sources/library/ and replaced OPENFILE with OPENSTREAM (except for the calls from \PEEKPUP and \PEEKNS, that I didn't track down). There was a trivai call in COMPILE.FILECHECK in COMPILE, but that function is not called anywhere. So I removed it. * ADIR: remove OPENFILE calls, also another stab at \COPYSYS With respect to \COPYSYS, this replaces the draft PR #1263. This applies TRUEFILENAME at the start, but remembers whether it was in fact a pseudohost and restores that for the return value. So if you start in a pseudo world you end up there. --------- Co-authored-by: Larry Masinter <lmm@acm.org>
1 parent 9273cff commit 50dc0a9

20 files changed

+996
-438
lines changed

lispusers/BITMAPFNS.LCOM

37 Bytes
Binary file not shown.

lispusers/READAIS

Lines changed: 373 additions & 38 deletions
Large diffs are not rendered by default.

lispusers/READAIS.LCOM

-359 Bytes
Binary file not shown.

lispusers/READINTERPRESS

Lines changed: 67 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
1-
(DEFINE-FILE-INFO READTABLE "INTERLISP" PACKAGE "INTERLISP")
2-
(FILECREATED "22-Jun-2021 10:52:34" 
3-
{DSK}<Users>kaplan>Local>medley3.5>git-medley>lispusers>READINTERPRESS.;4 10412
1+
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
42

5-
changes to%: (FNS PRINTSEQUENCE)
3+
(FILECREATED "24-Sep-2023 13:52:48" {WMEDLEY}<lispusers>READINTERPRESS.;6 11350
64

7-
previous date%: "22-Jun-2021 10:35:30"
8-
{DSK}<Users>kaplan>Local>medley3.5>git-medley>lispusers>READINTERPRESS.;3)
5+
:EDIT-BY rmk
6+
7+
:CHANGES-TO (FNS SHOWFILE)
8+
9+
:PREVIOUS-DATE "22-Jun-2021 10:52:34" {WMEDLEY}<lispusers>READINTERPRESS.;4)
910

1011

1112
(* ; "
@@ -122,8 +123,53 @@ Copyright (c) 1983-1986, 1988, 2021 by Xerox Corporation.
122123
)
123124

124125
(SHOWFILE
125-
(LAMBDA (IPFILE OUTPUTFILE MAXZEROLINES) (* rmk%: "16-Jun-84 15:29") (OR MAXZEROLINES (SETQ MAXZEROLINES 5)) (RESETLST (PROG (STREAM) (RESETSAVE (SETQ STREAM (OPENFILE IPFILE (QUOTE INPUT))) (QUOTE (PROGN (CLOSEF? OLDVALUE)))) (SETQ STREAM (GETSTREAM STREAM)) (* Don't do an OPENSTREAM until (OPENP stream) is NIL if stream is closed.) (RESETSAVE (OUTPUT)) (RESETSAVE (SETQ OUTPUTFILE (OPENFILE OUTPUTFILE (QUOTE OUTPUT))) (QUOTE (PROGN (CLOSEF? OLDVALUE) (AND RESETSTATE (DELFILE OLDVALUE))))) (OUTPUT OUTPUTFILE) (printout NIL .FONT DEFAULTFONT (OPENP STREAM (QUOTE INPUT)) T T) (for I B1 B2 B3 B4 B5 B6 B7 B8 (NZEROLINES _ 0) from 1 by 8 until (\EOFP STREAM) do (printout NIL |.I5| I %,,) (SETQ B1 (SHOWBYTE STREAM)) (SETQ B2 (SHOWBYTE STREAM)) (SETQ B3 (SHOWBYTE STREAM)) (SETQ B4 (SHOWBYTE STREAM)) (printout NIL %,,) (SETQ B5 (SHOWBYTE STREAM)) (SETQ B6 (SHOWBYTE STREAM)) (SETQ B7 (SHOWBYTE STREAM)) (SETQ B8 (SHOWBYTE STREAM)) (TAB 23) (COND (B1 (printout NIL |.I4| B1))) (COND (B2 (printout NIL |.I4| B2))) (COND (B3 (printout NIL |.I4| B3))) (COND (B4 (printout NIL |.I4| B4))) (printout NIL %,,) (COND (B5 (printout NIL |.I4| B5))) (COND (B6 (printout NIL |.I4| B6))) (COND (B7 (printout NIL |.I4| B7))) (COND (B8 (printout NIL |.I4| B8 T)))) (RETURN (LIST (CLOSEF IPFILE) (CLOSEF OUTPUTFILE))))))
126-
)
126+
[LAMBDA (IPFILE OUTPUTFILE MAXZEROLINES) (* ; "Edited 24-Sep-2023 13:52 by rmk")
127+
(* rmk%: "16-Jun-84 15:29")
128+
(OR MAXZEROLINES (SETQ MAXZEROLINES 5))
129+
(RESETLST
130+
[PROG (STREAM)
131+
[RESETSAVE (SETQ STREAM (OPENSTREAM IPFILE 'INPUT))
132+
'(PROGN (CLOSEF? OLDVALUE] (* Don't do an OPENSTREAM until
133+
 (OPENP stream) is NIL if stream is
134+
 closed.)
135+
(RESETSAVE (OUTPUT))
136+
[RESETSAVE (SETQ OUTPUTFILE (OPENSTREAM OUTPUTFILE 'OUTPUT))
137+
'(PROGN (CLOSEF? OLDVALUE)
138+
(AND RESETSTATE (DELFILE OLDVALUE]
139+
(OUTPUT OUTPUTFILE)
140+
(printout NIL .FONT DEFAULTFONT (OPENP STREAM 'INPUT)
141+
T T)
142+
[for I B1 B2 B3 B4 B5 B6 B7 B8 (NZEROLINES _ 0) from 1 by 8 until (\EOFP STREAM)
143+
do (printout NIL .I5 I %,,)
144+
(SETQ B1 (SHOWBYTE STREAM))
145+
(SETQ B2 (SHOWBYTE STREAM))
146+
(SETQ B3 (SHOWBYTE STREAM))
147+
(SETQ B4 (SHOWBYTE STREAM))
148+
(printout NIL %,,)
149+
(SETQ B5 (SHOWBYTE STREAM))
150+
(SETQ B6 (SHOWBYTE STREAM))
151+
(SETQ B7 (SHOWBYTE STREAM))
152+
(SETQ B8 (SHOWBYTE STREAM))
153+
(TAB 23)
154+
(COND
155+
(B1 (printout NIL .I4 B1)))
156+
(COND
157+
(B2 (printout NIL .I4 B2)))
158+
(COND
159+
(B3 (printout NIL .I4 B3)))
160+
(COND
161+
(B4 (printout NIL .I4 B4)))
162+
(printout NIL %,,)
163+
(COND
164+
(B5 (printout NIL .I4 B5)))
165+
(COND
166+
(B6 (printout NIL .I4 B6)))
167+
(COND
168+
(B7 (printout NIL .I4 B7)))
169+
(COND
170+
(B8 (printout NIL .I4 B8 T]
171+
(RETURN (LIST (CLOSEF IPFILE)
172+
(CLOSEF OUTPUTFILE])])
127173

128174
(SHOWBYTE
129175
(LAMBDA (STREAM) (* rmk%: "13-JUL-82 18:01") (PROG ((BYTE (COND ((NOT (\EOFP STREAM)) (\BIN STREAM))))) (COND (BYTE (PRIN1 (COND ((AND (IGEQ BYTE (CHARCODE SPACE)) (ILESSP BYTE (CHARCODE DEL)) (NEQ BYTE 96)) (CHARACTER BYTE)) (T (QUOTE %.)))))) (RETURN BYTE)))
@@ -132,14 +178,14 @@ Copyright (c) 1983-1986, 1988, 2021 by Xerox Corporation.
132178
(DECLARE%: EVAL@COMPILE
133179

134180
(PUTPROPS BIN.RIP MACRO [ARGS (LET ((ISTREAM (CAR ARGS))
135-
(OSTREAM (CADR ARGS)))
136-
`(LET [(C (BIN ,ISTREAM]
137-
(COND
138-
((IGREATERP (POSITION ,OSTREAM)
139-
15)
140-
(printout ,OSTREAM 5 "|" 8)))
141-
(printout ,OSTREAM .I3 C " ")
142-
C])
181+
(OSTREAM (CADR ARGS)))
182+
`(LET [(C (BIN ,ISTREAM]
183+
(COND
184+
((IGREATERP (POSITION ,OSTREAM)
185+
15)
186+
(printout ,OSTREAM 5 "|" 8)))
187+
(printout ,OSTREAM .I3 C " ")
188+
C])
143189
)
144190
(DECLARE%: EVAL@COMPILE DONTCOPY
145191

@@ -156,8 +202,9 @@ Copyright (c) 1983-1986, 1988, 2021 by Xerox Corporation.
156202
)
157203
(PUTPROPS READINTERPRESS COPYRIGHT ("Xerox Corporation" 1983 1984 1985 1986 1988 2021))
158204
(DECLARE%: DONTCOPY
159-
(FILEMAP (NIL (1210 1896 (PRINTMASTER 1220 . 1894)) (1897 9430 (OPCODE 1907 . 2032) (TOKEN 2034 . 2606
160-
) (FINDNONPRIMNAME 2608 . 2713) (FINDOPNAME 2715 . 2972) (SHORTINT 2974 . 3167) (TOKENFORMAT 3169 .
161-
3411) (FINDSEQUENCETYPE 3413 . 3617) (PRINTTOKEN 3619 . 4570) (PRINTSEQUENCE 4572 . 7449) (
162-
SEARCHIPLIST 7451 . 7583) (READINT.IP 7585 . 7824) (SHOWFILE 7826 . 9150) (SHOWBYTE 9152 . 9428)))))
205+
(FILEMAP (NIL (1158 1844 (PRINTMASTER 1168 . 1842)) (1845 10432 (OPCODE 1855 . 1980) (TOKEN 1982 .
206+
2554) (FINDNONPRIMNAME 2556 . 2661) (FINDOPNAME 2663 . 2920) (SHORTINT 2922 . 3115) (TOKENFORMAT 3117
207+
. 3359) (FINDSEQUENCETYPE 3361 . 3565) (PRINTTOKEN 3567 . 4518) (PRINTSEQUENCE 4520 . 7397) (
208+
SEARCHIPLIST 7399 . 7531) (READINT.IP 7533 . 7772) (SHOWFILE 7774 . 10152) (SHOWBYTE 10154 . 10430))))
209+
)
163210
STOP

lispusers/READINTERPRESS.LCOM

-115 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)