home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!olivea!apple!cambridge.apple.com!hall@allegra.att.com
- From: hall@allegra.att.com (Bob Hall)
- Newsgroups: comp.lang.lisp.mcl
- Subject: Re2: MCL support for MOP
- Message-ID: <9301112204.AA21799@brazil.cambridge.apple.com>
- Date: 11 Jan 93 21:55:56 GMT
- References: Brent Benson's message of 11 Jan 93 15:32:00 GMT <BRENT.93Jan11103200@rcx1.ssd.csd.harris.com>
- Sender: info-mcl-request@cambridge.apple.com
- Lines: 35
- Approved: comp.lang.lisp.mcl@Cambridge.Apple.C0M
-
-
- From: brent@ssd.csd.harris.com (Brent Benson)
- Date: 11 Jan 93 15:32:00 GMT
-
- I'm not convinced that it is hard to tree shake code that does not
- contain calls to eval. I would appreciate it if someone could tell me
- about other difficulties.
-
- ;There's the general problem of calls to the various forms of READ
- ; (lots of data files in the world are LOADed (involving calls to READ))
- ;and higher-order operators like funcall
- ;and the behavior of fboundp
-
- (funcall (read) (read))
-
- ;or
-
- (loop ;the proverbial British Museum Monkeys program
- (let ((rand (intern (generate-random-string))))
- (when (symbol-function rand)
- (when (catch-and-ignore-all-errors
- (funcall rand))
- (format t "Found a nonNIL zero-arg function: ~s" rand)))))
-
- ;How about this macro?
-
- (defmacro mycall (x y) `(,x ,y))
-
- ;Or even
-
- (fboundp 'nreconc) ;which presumably returns a different value if nreconc
- ;is "shaken" out of the image.
- (fboundp (read))
-
- -- Bob
-