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
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
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