[comp.lang.clos] GINA on Lucid 4.0

cnnnghmp@vax1.tcd.ie (06/26/91)

I have received GINA, a user interface managment system for use with CLM (Motif)
and CLOS. The README file for GINA says that it runs with Sun Common
Lisp 3.0 and PCL but not with the CLOS provided in Sun Common Lisp 4.0.

Has anyone ported GINA to Sun Common Lisp 4.0?
Is there much involved?

We will attempt to install GINA on Lucid 4.0 real soon but are prevented 
from doing so at the moment because of the EGC bug that was reported
in the Lisp news group recently.

Padraig Cunningham.

scott@wilbur.coyote.trw.com (Scott Simpson) (06/27/91)

In article <1991Jun25.172710.1@vax1.tcd.ie> you write:
>
>I have received GINA, a user interface managment system for use with CLM (Motif)
>and CLOS. The README file for GINA says that it runs with Sun Common
>Lisp 3.0 and PCL but not with the CLOS provided in Sun Common Lisp 4.0.
>
>Has anyone ported GINA to Sun Common Lisp 4.0?
>Is there much involved?
>
>We will attempt to install GINA on Lucid 4.0 real soon but are prevented 
>from doing so at the moment because of the EGC bug that was reported
>in the Lisp news group recently.
>
>Padraig Cunningham.

Michael Spenke, one of the developers of GINA, and I went back and
forth with Lucid on this one. The reason is doesn't run with Lucid CL
4.0 is because of an AFTER method bug in Lucid Common Lisp. If you
want to see if your Lucid CL has this bug, try out the following:

      (defclass label-1 ()
          ((slot-1 :accessor slot-1 :initform 1)))

      (DEFMETHOD (SETF slot-1) :AFTER (NEW-value (X label-1))
              (format t "hello-1~%"))

      (setq l1 (make-instance 'label-1))

      (setf (slot-1 l1) 5)

   This works fine: whenever the last expression is called, the deamon prints
   out his message. But as soon as I define another class

   (defclass lab ()
      ((slot-1 :accessor slot-1 :initform 1)))

   the deamon is not called anymore. That is, when you type (setf
   (slot-1 l1 5) "hello-1~%" isn't printed.

If you have this bug, I suggest you get a new clos.sbin and a new
Lucid binary. I got a new clos.sbin from Lucid and it fixed the AFTER
method bug but then if I tried to recompile the old binaries there
was a missing function! (Sorry, I don't recall which function and I
don't have time to check). I suspect this new function is defined in a
new Lucid binary so get a new Lucid binary too when you get a new
clos.sbin.
-- 
Scott Simpson			TRW			scott@coyote.trw.com

jonl%kuwait@lucid.com (Jon L White) (06/27/91)

re: If you have this bug, I suggest you get a new clos.sbin and a new
    Lucid binary. I got a new clos.sbin from Lucid and it fixed the AFTER
    method bug but then if I tried to recompile the old binaries there
    was a missing function! (Sorry, I don't recall which function and I
    don't have time to check). I suspect this new function is defined in a
    new Lucid binary so get a new Lucid binary too when you get a new
    clos.sbin.

The proper procedure here is to get a coordinated set of patches from
Sun (I presume you are talking about Sun Common Lisp on the Sun4?)
I'm aware of several bugs in the base image that ought to be patched,
and likely one of them is needed before you apply the cited CLOS patch
(or, before using a clos.sbin repacked later than the original 4.0 
closure date of July 6, 1990)


-- JonL --