[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
- To: JONL at MIT-MC
- From: EB@MIT-AI
- Date: Sat, 2 Nov 80 22:31:21 GMT
- Cc: (BUG Lisp) at MIT-MC, KMP at MIT-MC Date: 11 FEB 1980 1325-EST From: JONL at MIT-MC (Jon L White) . . . KMP has a utility, IOTA, to handle "clean-ups" after file loading.
- Original-date: 02/11/80 18:31:21 EDT
IOTA does not solve the problem which I described. IOTA allows a user
to WRITE a version of LOAD, FASLOAD, etc. which does cleanups after
file loading automatically, but it does nothing to the SYSTEM versions.
That means that the USER of a file that makes temporary changes on loading,
not the WRITER, has to follow a special loading procedure if he is to be
protected in the event of a quit. It is this to which I object. It is
not properly the concern of the user of a package what changes that
package makes temporarily during loading; that is the concern of the
package author. It is not possible to properly confine the necessity of
knowing unless the necessary UNWIND-PROTECT is part of the standard system
On the other
hand, Interlisp permits comments to be included right in with the souce
text (by storing them, I believe, in a special "comments" area).
Just to set things straight, it stores them in ordinary LIST space and
works just like Maclisp (COMMENT ...). You may have in mind the
NORMALCOMMENTSFLG=NIL feature of Interlisp whereby comments are not read
in but are stored as short comments (lists) of a special format indicating
the file and position in the file of the actual text. This scheme works
poorly because executable Lisp dumps containing such comment pointers
often outlive the source file versions containing the actual comments.