From: Daniel Wood
Subject: Q: defsys with Allegro
Date: 
Message-ID: <31A9D4A8.41C67EA6@crl.nmsu.edu>
I am attempting to write a defsystem with Allegro where I have added my
own module class.

The basic problem is that my system includes a few files which can't be
compiled with LISP compilers but with their own compilers.  Thus, I have
created my own empty module class:

(defclass foo-module (defsys:foreign-module)
	())
[NOTE: I have also tried using defsys:default-module as well, but I
still get the errors mentioned below]

Along with this, I have defined the following methods to handle loading
and compiling of source files of class foo-module:

(defmethod defsys:compile-module ((module foo-module) &key)
	<code for compiling module>
)

(defmethod defsys:load-module ((module foo-module) &key)
	<code for loading module>
)

Then, in the defsysem call, I have:

(defsystem my-system 
	(<system-options>)
	...
	(:module MOD1 ("file1") (:module-class foo-module))
	...
	(:serial MOD1 ...))

I don't get any errors when I load in the sysdcl.lsp file containing the
above, but when I compile the system, I get the following error:

Error: expected object of class module, but got:
       #<FOO-MODULE "file1" @ #x33331a>

I am unclear why I would be getting this error, and _any_ suggestions or
pointers to something I could look at for some help would be very
appreciated.

Thanks in advance,
daniel wood
·····@crl.nmsu.edu