[Ecls-list] clem on clisp

Juan Jose Garcia-Ripoll juanjose.garciaripoll at googlemail.com
Sat Dec 6 09:35:31 UTC 2008


On Fri, Dec 5, 2008 at 6:17 AM, Daniel Herring <dherring at tentpost.com> wrote:
> On Tue, 2 Dec 2008, Cyrus Harmon wrote:
>
>> When I try to compile clem with ecls, I get the following:
>>
>> (NIL NIL NIL NIL NIL NIL) is not a class.
>>  [Condition of type SIMPLE-ERROR]
>
>
> My bad.  I got ECL compiling clem, just forgot how hard it was.  Whenever
> you get one of these errors, restart ECL and try again.

I may be mistaken, but CLEM seems to be broken. The implementation of
REINITIALIZE-INSTANCE and INITIALIZE-INSTANCE do not return a class
object but rather call a function that returns a list

(defmethod initialize-instance :around
    ((class standard-matrix-class) &rest all-keys &key
direct-superclasses &allow-other-keys)
  [....]
  (finalize-inheritance class)
  (fill-standard-matrix-class-slots-from-ancestors class all-keys))

The appropriate definitions should end as follows

(defmethod initialize-instance :around
    ((class standard-matrix-class) &rest all-keys &key
direct-superclasses &allow-other-keys)
  [....]
  (finalize-inheritance class)
  (fill-standard-matrix-class-slots-from-ancestors class all-keys)
  class)

With this, CLEM seems to build just fine.

Juanjo

-- 
Instituto de Física Fundamental, CSIC
c/ Serrano, 113b, Madrid 28009 (Spain)
http://juanjose.garciaripoll.googlepages.com


More information about the ecl-devel mailing list