From: R. Bharat Rao
Subject: defsystem question
Date: 
Message-ID: <1991May31.171429.17402@m.cs.uiuc.edu>
I have a question regarding defsystem (on the TI Explorer's).  If you
have defined a system (say PLS) via defsystem, how do you make this
a module within another system.  

The :component-systems option is not quite right as all component
systems are compiled and loaded after the main system has been.  This
could cause problems if you use macros from the component system in
the main ystem (for example, if I define a system `FOR' - for the FOR
macro - it must be compiled and loaded before anything other code that
uses the FOR macro is comiled).  One option is to put a 
(make-system 'FOR) in the system file, but this requires re-loading
the system file if I change my FOR macro.  

The best option seems to be to make the FOR (or PLS) systems,
modules in systems that use them, but that doesn't seem possible (I
can use external modules from PLS & FOR as modules, but can't seem to
make the systems themselves be modules).

Thanks in advance,


R. Bharat Rao                         E-mail: ······@cs.uiuc.edu
Beckman Institute for Advanced Science and Technology
Electrical & Computer Engineering, University of Illinois, Urbana
Snail Mail: Beckman Institute, 405 N Matthews, Urbana, IL 61801
From: Bruce R. Miller
Subject: Re: defsystem question
Date: 
Message-ID: <2884701867@ARTEMIS.cam.nist.gov>
In article <······················@m.cs.uiuc.edu>, R. Bharat Rao writes: 
> 
> I have a question regarding defsystem (on the TI Explorer's).  If you
> have defined a system (say PLS) via defsystem, how do you make this
> a module within another system.  
> 
> The :component-systems option is not quite right as all component
> systems are compiled and loaded after the main system has been.  

I suspect this is very `post MIT' and not in TI's defsystem, but
the Symbolics has the capability of specifying module `types' (eg. Lisp,
c, font, system ..)

So you can have the module:
  (:module PLS "PLS" (:type :system))
and put it whereever it needs to be.