[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Misc. PCL patches
- To: LaMott Oren <Oren@Home.csc.ti.com>
- Subject: Re: Misc. PCL patches
- From: Gregor.pa@Xerox.COM
- Date: Mon, 8 Aug 88 13:29 PDT
- Cc: CommonLoops.pa@Xerox.COM
- Fcc: BD:>Gregor>mail>outgoing-mail-3.text.newest
- In-reply-to: <2795811648-642518@SI>
- Line-fold: no
Date: Fri, 5 Aug 88 17:20:48 CDT
From: LaMott Oren <Oren@Home.csc.ti.com>
I'm working with *pcl-system-date* "7/7/88 (beta) July 7th PCL"
and made the following patches:
Thanks for these changes. Even though I am not going to make the
particular changes you sent, they point out some important issues,
and except for the declare macros change, we are working on equivalent
changes.
;;; Reason: Common-lisp allows macros to define declarations.
;;; Patch PCL to allow this also.
A cleanup committe proposal modifies Common Lisp not to allow this. PCL
doesn't allow this by concious design decision. It used to allow it and
doesn't now. So, I am not going to put this patch in.
;;; Reason: Explorer DEFSTRUCT has a bug where an inefficient predicate
;;; gets generated the first time its compiled. Redefine
;;; IWMC-CLASS-P with an efficient definition. (This makes some
;;; PCL applications run TWICE as fast)
;; In the TI-LOW file
(proclaim '(inline IWMC-CLASS-P))
(defun IWMC-CLASS-P (thing) (typep thing 'iwmc-class))
An equivalent version of this change was contributed by Reed Hastings at
Stanford. I will include this in the next release along with some other
Explorer changes which are sitting on a Macintosh disk in my office.
;;; Reason: Optimize initialize-instance for the common case
;;; where there are less than two slot-initargs.
The next release of PCL will include an implementation of the real
initialization protocol specified by 88-002R. It will also include a
mechanism for defining functions which are equivalent to calls to
make-instance. These functions will be highly optimized, and this
should speed up instance creation dramatically.
-------