Re: [Ilisp-help] problem with new CMUCL and ILISP

Bob Rogers <[email protected]> Wed, 26 Nov 2003 21:51:27 -0500
Newsgroups gmane.lisp.ilisp.devel
Message-ID <[email protected]>
   From: rif <[email protected]>
   Date: Wed, 26 Nov 2003 12:39:40 -0500

   I now have an actual fix (but no understanding) of the problem.  The
   offending coe is, in find-src.lisp, lines 45-49

   ;; [necessary in cmucl 18d, but not in 18f (we expect).  -- rgr, 19-Feb-03.]
   #+cmu
   (defmethod class-name ((class structure-class))
     (kernel::structure-class-name class))

   I have no idea what this is actually doing, but it seems that in both
   CMUCL 18e and 19a, this code causes find-src.lisp to only load
   successfully when compiled, not when interpreted, which causes all the
   problems discussed yesterday.  I came upon the solution just by
   randomly poking around in the files, so I guess this is a cargo cult
   solution . . .

But it does narrow the problem very effectively; thanks for doing the
leg work!

   If anyone would care to explain what this code actually does/means,
   I'd be grateful.

   Cheers,

   rif

I wrote this (I'm "rgr", BTW) so that the rest of find-src.lisp wouldn't
have to worry so much about the distinction between standard-class and
structure-class instances.  In 18d/e, class-name does the right
thing for structure classes, so I can share more of the method-finding
code than I would otherwise be able to do.

   Based on a cursory test, it seems to work in the interpreter if I do
(slot-value class 'pcl::name) here.  This might also be more portable --
between CMUCL versions, that is.  I'll give this a try; thanks again for
getting me started.

					-- Bob


-------------------------------------------------------
This SF.net email is sponsored by: SF.net Giveback Program.
Does SourceForge.net help you be more productive?  Does it
help you create better code?  SHARE THE LOVE, and help us help
YOU!  Click Here: http://sourceforge.net/donate/