[closer-devel] News about forward referenced classes...

Pascal Costanza pc at p-cos.net
Mon Nov 6 21:44:02 UTC 2006


Hi,

I have just performed some checks on various Lisp implementations  
with forward referenced classes. Here are some results:

- A defclass form with :metaclass forward-referenced-class fails on  
most implementations. Although nothing is explicitly specified here  
anywhere, it's safe to assume that this behavior is ok. (To fail,  
that is... ;)

- Interestingly, most implementations also fail when make-instances- 
obsolete is called on an instance of forward-referenced-class. I find  
this surprising as I would have expected this to be just a no-op.  
Does anyone have an idea why this _should_ signal an error?

- Allocate-instance and change-class signal errors, which is the  
correct behaviour AFAICT.

- Typep and subtypep fail on clisp, LispWorks and MCL. _This is a bug!_

See Section 4.3.7 Integrating Types and Classes in the HyperSpec. It  
specifies the semantics for typep and subtypep operating on classes  
without restricting them to any metaclass (so they cover built-in- 
class and especially structure-class as well).

I will report the latter to the respective vendors / implementors.


Pascal

-- 
Pascal Costanza, mailto:pc at p-cos.net, http://p-cos.net
Vrije Universiteit Brussel, Programming Technology Lab
Pleinlaan 2, B-1050 Brussel, Belgium







More information about the closer-devel mailing list