bharat@milton (R. Bharat Rao) (06/04/91)
This is on a TI Explorer II. ;I define a system, LISP-extensions-1, that among other things loads a ; FOR macro when I do a (make-system 'lisp-extensions-1 :compile). (defsystem lisp-extensions-1 (:name "Lisp Extensions 1") (:pathname-default "bharat.inverse.pls.lisp-ext;") (:module for-functions "for-fun") (:module lisp-ext-1 "lisp-ext-1") (:compile-load for-functions) (:compile-load lisp-ext-1 (:fasload for-functions))) ; I now define a system PLS, and the files uses the FOR macro. (defsystem PLS (:name "Probabilistic Learning System") (:nicknames "pls") ; VVVVVVVVVVVVVVVVVVVVVVVVVVV (:component-systems lisp-extensions-1) (:do-components) ; ^^^^^^^^^^^^^^^^^^^^^^^^^^^ (:module hyperbox-type "hyperbox") (:module interval-type "interval") (:module pls-files ("list2pls" "find-spl" "do-split" "pls2list" "PLS")) (:compile-load interval-type) (:compile-load hyperbox-type (:fasload interval-type)) (:compile-load pls-files (:fasload interval-type hyperbox-type)) ) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Ii is essential that when the PLS system is made, as with (make-system 'pls :compile :noconfirm) that the for macro (defined in the files lisp-ext-1 and for-fun) be loaded first. However, this does not happen, with the :component-systems and :do-components which causes LISP-extensions-1 t be loaded AFTER compiling the modulke PLS-files. Nor can I make LISP-extensions-1 a module in PLS. One (kludgY) solution which would work would be to define a module lisp-ext-1 in PLS which contains the files in the SYSTEM lisp-extensions-1. This will be easy as the operations in LISP-extensions-1 are pretty simple, but in general there should be a more elegant solution. Any ideas? Thanks in advance, R. Bharat Rao E-mail: bharat@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