[cells-devel] Cells/ASDF: Telling the lisp env that cells is loaded...
Hi all on the list, hi Kenny, after playing now with cells for a while I wonder what you guys think of adding something like the following to a cells load file: (I put it into cells.asd) ---- (defmethod asdf:perform ((o load-op) (c (eql (find-system :cells)))) (pushnew :cells *features*)) ---- Objective was to "tell" other packages/functionality that cells is loaded into the image/system. Any comments? Thx for feedback. Regards, Frank
On Fri, 13 Feb 2004, Frank Goenninger wrote:
(defmethod asdf:perform ((o load-op) (c (eql (find-system :cells)))) (pushnew :cells *features*))
I wonder if this is worth the trouble: any systems using Cells should probably just :depends-on (:cells). If it's desired to note Cells presence explicitly, then (pushnew :cells *modules*) would probably be a better choise. Cheers, --Nikodemus
Nikodemus, thx for feedback: On Fri, 2004-02-13 at 13:51, Nikodemus Siivola wrote:
On Fri, 13 Feb 2004, Frank Goenninger wrote:
(defmethod asdf:perform ((o load-op) (c (eql (find-system :cells)))) (pushnew :cells *features*))
I wonder if this is worth the trouble: any systems using Cells should probably just :depends-on (:cells).
Yes, understood. However, I have configured my .clinit.cl file (autoloaded by ACL on startup) such that some packages/modules are loaded on startup if the image does not yet contain those: --X-- #-:asdf (load "/opt/asdf/asdf.lisp") #-:uffi (asdf:operate 'asdf:load-op :uffi) #-:cells (asdf:operate 'asdf:load-op :cells) --X-- This uses the #- mechanism.
If it's desired to note Cells presence explicitly, then
(pushnew :cells *modules*)
would probably be a better choise.
Agreed. I added this to my cells.asd file. Thx again.
Cheers,
--Nikodemus
Cheers, Frank
Frank Goenninger wrote:
----
(defmethod asdf:perform ((o load-op) (c (eql (find-system :cells)))) (pushnew :cells *features*))
----
Objective was to "tell" other packages/functionality that cells is loaded into the image/system.
Any comments?
Good idea. But is there any way to do that in the source, in case I switch to mk::defsystem? Would it work with a hard-coded line in cell.lisp? kt
On Fri, 13 Feb 2004, Kenny Tilton wrote:
Good idea. But is there any way to do that in the source, in case I switch to mk::defsystem? Would it work with a hard-coded line in cell.lisp?
Sure. Just (pushnew :cells *modules*) in some file or other. Is there some specific reason why you are thinking of changing to mk-defsystem? Cheers, --Nikodemus
Nikodemus Siivola wrote:
On Fri, 13 Feb 2004, Kenny Tilton wrote:
Good idea. But is there any way to do that in the source, in case I switch to mk::defsystem? Would it work with a hard-coded line in cell.lisp?
Is there some specific reason why you are thinking of changing to mk-defsystem?
Barlow said he would help with Cello when hell freezes over, so I thought it would be equally mature of me not to use his software. This is war! (Isn't it?) Besides, marco is a fellow lisp-nyc, we should stick together. Don't worry, if anything we'll offer both. The bigger picture is whether any sys-def script should become part of the source code, if you will. kt -- http://tilton-technology.com Why Lisp? http://alu.cliki.net/RtL%20Highlight%20Film Your Project Here! http://alu.cliki.net/Industry%20Application
Hi Kenny: On Fri, 2004-02-13 at 15:02, Kenny Tilton wrote:
Frank Goenninger wrote:
----
(defmethod asdf:perform ((o load-op) (c (eql (find-system :cells)))) (pushnew :cells *features*))
----
Objective was to "tell" other packages/functionality that cells is loaded into the image/system.
Any comments?
Good idea. But is there any way to do that in the source, in case I switch to mk::defsystem? Would it work with a hard-coded line in cell.lisp?
kt
Why not keep it "package management system dependent"? Doing it in the .asd file for ASDF and in the .system file for mk::defsystem ? This would keep the dependencies separated per file. Cheers, Frank
Frank Goenninger wrote:
Hi Kenny:
On Fri, 2004-02-13 at 15:02, Kenny Tilton wrote:
Frank Goenninger wrote:
----
(defmethod asdf:perform ((o load-op) (c (eql (find-system :cells)))) (pushnew :cells *features*))
----
Objective was to "tell" other packages/functionality that cells is loaded into the image/system.
Any comments?
Good idea. But is there any way to do that in the source, in case I switch to mk::defsystem? Would it work with a hard-coded line in cell.lisp?
kt
Why not keep it "package management system dependent"?
Doing it in the .asd file for ASDF and in the .system file for mk::defsystem ? This would keep the dependencies separated per file.
Sounds good. When y'all figure it out for ASD lemme know and I will add it to my version over here. kt -- http://tilton-technology.com Why Lisp? http://alu.cliki.net/RtL%20Highlight%20Film Your Project Here! http://alu.cliki.net/Industry%20Application
On Sun, 2004-02-15 at 22:08, Kenny Tilton wrote: [part of message deleted]
Doing it in the .asd file for ASDF and in the .system file for mk::defsystem ? This would keep the dependencies separated per file.
Sounds good. When y'all figure it out for ASD lemme know and I will add it to my version over here.
kt
Hey, no prob. The following lines are now part of my cells.asd file (at the end of the file): (defmethod asdf:perform ((o load-op) (c (eql (find-system :cells)))) (pushnew "CELLS" *modules*) (pushnew :cells *features*)) This works now OK fpr ACL - don't know about other implementations as I don't have them available. I will look into finding a similar thing for mk-defsystem. Cheers, Frank
participants (3)
-
Frank Goenninger
-
Kenny Tilton
-
Nikodemus Siivola