Re: [PowerLoom Forum] Loom question...
Thomas Russ <[email protected]> Mon, 29 Sep 2003 11:21:47 -0700
| Newsgroups | gmane.comp.ai.loom |
|---|---|
| Message-ID | <[email protected]> |
On Thursday, September 25, 2003, at 07:26 AM, John Bateman wrote: > Sorry to send out a Loom query to the PowerLoom list, but > I am not sure where to send the Loom queries anymore The loom-forum mailing list is still alive and well. > > Problem: I am trying to compile and use Loom with GNU CLISP > version (2.31). I know that CLisp (Roger Corman's) does not support enough of CLOS to be able to compile and run Loom. I'm not completely sure if that is the same CLISP as you are using. In particular, Loom needs to be able to execute CHANGE-CLASS and have appropriate methods for class redefinition and class change react to instances having their class changed. That and some of the meta-object stuff similar to what you have found are typically the problems when trying to bring Loom onto a new system. For instance, we programmatically create new methods (in roles.lisp) which uses some not yet standardized functions. If you are looking for an open-source Lisp to run Loom with, I think that you will need to use CMU CL instead. > > Compilation fails with a no applicable method message during > setting up the network in coda.lisp. > > I attach below the trace of that part of the compilation, but am > not sure what kind of further information might be useful. I started > with Loom 4.0, and then backed off to Loom 2.1 in the hope that > perhaps an older simpler version might not mess up. But pretty > much the same error occured. > > Any pointers? Anyone already compiled a version of Loom with > GNU Clisp. (btw: with Loom 4.0 I also had to provide a version > of clos:set-definition-name in order to get anywhere: I hacked > it as follows: > > #+clisp > (defun CLOS::slot-definition-name (slot) > (cond ((arrayp slot) (aref slot 0)) > ((consp slot) (first slot)) > (t (error "CLOS definition name: bail out")))) > > ). > > Thanks in advance, > John Bateman. > > TRACES=============================================== > CLISP 2.31; compiling Loom 4.0 > > WARNING: > DEFUN/DEFMACRO: redefining macro DEFMETHOD in > D:\Programs\gnu-clisp\clisp-2.31\e > xperiment\loom4.0\abox\penultimate.lisp, was defined in > D:\Programs\gnu-clisp\cl > isp-2.31\experiment\loom4.0\tbox\globals.lisp > ; - Loading binary file > ; > "D:\Programs\gnu-clisp\clisp-> 2.31\experiment\loom4.0\BIN\MISC\abox\penu > ltimate.lbin" > ; - Compiling source file > ; > "D:\Programs\gnu-clisp\clisp-> 2.31\experiment\loom4.0\abox\coda.lisp"+++ > +++++^!^!^!^!^!^!^!^!!!^!^! > #sealing operations = 12 > C > ** - Continuable Error > EXPORT(DOCUMENTATION): #<PACKAGE CLOS> is locked > If you continue (by typing 'continue'): Ignore the lock and proceed > 1. Break LOOM[9]> :c > ............................................... > ...... > *** - NO-APPLICABLE-METHOD: When calling #<GENERIC-FUNCTION > MIN-1-RESTRICTION> w > ith arguments (|R|HOLDS-TRUE-3), no method is applicable. > 1. Break LOOM[10]> > > > > CLISP 2.31; compiling Loom 2.1 > > DEFUN/DEFMACRO: redefining macro DEFMETHOD in > D:\Programs\gnu-clisp\clisp-2.31\e > xperiment\loom21\abox\penultimate.lisp, was defined in > D:\Programs\gnu-clisp\cli > sp-2.31\experiment\loom21\tbox\globals.lisp > ; - Loading binary file > ; > "D:\Programs\gnu-clisp\clisp-> 2.31\Experiment\loom21\BIN\abox\penultimat > e.lbin" > ; - Compiling source file > ; > "D:\Programs\gnu-clisp\clisp-> 2.31\Experiment\loom21\abox\coda.lisp".... > ...+++++++ > #classifications = 3 > !!!!!!!!!!!C..........................M........M......M..M............. > ......... > ..........M...M..M..M... > *** - NO-APPLICABLE-METHOD: When calling #<GENERIC-FUNCTION > MIN-1-RESTRICTION> w > ith arguments (|R|THE-ROLE), no method is applicable. > 1. Break LOOM[10]> The problem here is that the relation "THE-ROLE" is a N-ary relation and not a binary relation. That means that the min-1-restriction function really shouldn't be called on it. I'm not sure why this function is being called on it, but it doesn't happen in any of the other lisp systems. The real key to getting Loom up is in the compilation of the coda.lisp file, since that is where the built-in concepts get created for the first time. That will be the point at which problems are most likely to appear. > > > > > _______________________________________________ > powerloom-forum mailing list > [email protected] > http://mailman.isi.edu/mailman/listinfo/powerloom-forum _______________________________________________ Loom Knowledge Representation Language Forum [email protected] Change subscription: http://mailman.isi.edu/mailman/listinfo/loom-forum