Subject: [clisp-list] Any thoughts on a MOP?

From: Peter Denno <[email-masked]>
Date: Wed May 1 10:00:06 2002

Hi,

Does anyone here have any thoughts on developing a MOP (such as described in 
AMOP) for CLisp?

Is anyone working on this?

Are there architectural impediments to doing this work in CLisp, as it stands 
now?

Are there others interested in having a MOP in CLisp?

-- 
Best Regards,
 - Peter

 Peter Denno
 National Institute of Standards and Technology, 
 Manufacturing System Integration Division,
 100 Bureau Drive, Mail Stop 8260             Tel: +1 301-975-3595
 Gaithersburg, MD, USA 20899-8260             FAX: +1 301-975-4694

---

From: Paolo Amoroso <[email-masked]>
Date: Thu May 2 05:02:45 2002

> Does anyone here have any thoughts on developing a MOP (such as described in 

Do you mean something more integrated with CLISP than PCL?

Paolo
-- 
EncyCMUCLopedia * Extensive collection of CMU Common Lisp documentation
http://www.paoloamoroso.it/ency/README
[http://cvs2.cons.org:8000/cmucl/doc/EncyCMUCLopedia/]

---

From: Peter Denno <[email-masked]>
Date: Fri May 3 09:39:15 2002

Thanks, Paolo.

I did not realize that PCL implemented the MOP to any extent. I now see that 
it does. So I need to start there. 

Has anyone tried to compile PCL with Clisp lately?

I tried to build PCL with make (using the CMU repository distribution under 
clisp, others do not have clisp-low.lsp nor the makefile). I hit a few 
problems, some of which might be spurious -- resulting from making a wrong 
choice somewhere. I'll look into this more, but if anyone has any immediate 
thoughts on any of the following, those would be appreciated:

(1)
Compiling file /home/pdenno/downloaded/lisp/clisp/packages/pcl-orig/low.lsp 
...
*** - No class named: STD-INSTANCE.
0 errors, 0 warnings

I wrote a work-around for this. It involves forcing find-class (the one in 
macros.lsp) to use the distribution's defstruct for std-instance -- not very 
elegant, to say the least.  My compilation is not far enough along in the 
bootstrapping to tell whether or not my guess is ok.

(2) 
Compiling file /home/pdenno/downloaded/lisp/clisp/packages/pcl/defclass.lsp 
...
*** - FUNCALL: the function WALKER::SPECIAL-FORM-P is undefined

This one occurs after making the workaround described above.
special-form-p is used in walker:walk-form-internal. Lispworks has a function 
by such a name in the lw package. cmulisp doesn't, and yet pcl runs there.

(3) 
Compiling file /home/pdenno/downloaded/lisp/clisp/packages/pcl/cache.lsp ...
WARNING in function MAKE-WRAPPER-INTERNAL in lines 317..381 :
.GATHERING1. is neither declared nor bound,
it will be treated as if it were declared SPECIAL.
*** - EVAL: the function GATHER is undefined

This one occurs after writing yet more work-arounds, so I may have done 
something wrong. Iterate.lsp exports a symbol "gather" yet doesn't provide a 
value for it. I don't think it is given a value anywhere (cmucl has this 
symbol too, but likewise it doesn't have a value (at startup) nor a function 
value). 

Any thoughts on any of this would be appreciated.

On Thursday 02 May 2002 08:00 am, Paolo Amoroso wrote:
> > Does anyone here have any thoughts on developing a MOP (such as described
> > in AMOP) for CLisp?
>

-- 
Best Regards, 
- Peter 

Peter Denno