[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Another (major) difference
- To: larus@ginger.Berkeley.EDU
- Subject: Re: Another (major) difference
- From: Gregor.pa@Xerox.COM
- Date: Mon, 29 Aug 88 15:49 PDT
- Cc: CommonLoops.pa@Xerox.COM
- Fcc: BD:>Gregor>mail>outgoing-mail-4.text.newest
- In-reply-to: <8808291652.AA17481@paris.Berkeley.EDU>
- Line-fold: no
Date: Mon, 29 Aug 88 09:52:07 PDT
From: larus%paris.Berkeley.EDU@ginger.Berkeley.EDU (James Larus)
A major difference between the AAAI release of PCL and
previous releases of PCL is minimally documented in the release notes.
PCL now checks whether slots are "unbound", in other words, you can no
longer assume that fields within an object are initialized to NIL.
This is a major change to the sematics of PCL (and a major difference
from the semantics of CL structures).
This is a good point. The notes.text file did not make it clear that
this change had happened and that it was a big semantic change. I have
put out a new version of notes.text which makes this somewhat more
clear. Your message should also serve to warn people.
I also find the terminology of slots being "bound" to be
extremely confusing. Binding has a clear fuzzy meaning in CL and
assignment to fields of objects is not related to this concept. I had
a good deal of trouble understanding PCL's error message:
Error: The slot OBJECT-MARK is unbound in the object #<MO 35160071>.
I would suggest that correct verb is "uninitialized", not "unbound".
Note that the keyword in DEFCLASS is :INITFORM, not :BINDFORM.
You are probably right here. The spec seems to use both terms. Had we
noticed this sooner we could probably have cleared it up. The general
heuristic that says that whenever the string "BOUND" appears your are in
trouble should have warned us.