[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: EW under Apollo Domain Lisp

> We are attempting to compile EW under Apollo's Domain/Common Lisp
> (a product of Lucid) with CLOS and CLX.  We have been hung up on the
> file io-functions.lisp because:
> 1. It appears to redefine standard lisp functions, and *then* call
> the function (setup-lisp-functions) which is designed to take care of 
> saving away the old version of the functions.

io-functions is used to allow standard CL io functions to interface with
the presentation substrate.  That way functions like PRINT will work
inside of functions like WITH-OUTPUT-AS-PRESENTATION.  Since I didn't have
access to the internals of such functions as PRINT I needed to redefine them
so that they would handle the presentations as well as perform their
appropriate behavior.  Unfortunately, if there is an interaction with the
system's primitives
they tend to crash horribly.  The best thing to debug is to change the file
so that only one function is defined at a time until you see which causes
the problem.

> 2. It uses pcl internals to handle type checking instead of CLOS
> functions.  Simply adding (IN-PACKAGE 'CLOS :NICKNAMES '(PCL))
> to the system file doesn't solve the problem.

It shouldn't be to hard to find out which is the proper CLOS function.
Unfortunately, I'm not in front of the code this week and can't tell you.
However, fixing this may solve all your problems.

Hope this helps.
Andrew L. Ressler 301-643-4526