Re: operating on multiple systems

Todd Sabin <[email protected]> Mon, 12 Nov 2007 10:33:01 -0500
Newsgroups gmane.lisp.cclan.general
Message-ID <[email protected]>
Gary King <[email protected]> writes:

> Does anyone else like the idea of being able to:
>
> (asdf:oos 'asdf:load-op '(project-1 project-2))
>
> It seems like a pretty easy change and intuitive from the interface/ 
> API perspective.

Please, no.  There's no need for this to be in asdf.  Anyone who wants
it can just

(defun load-systems (&rest systems)
  (do-list (system systems)
    (asdf:oos 'asdf:load-op system)))

and have it.  As someone used to explain when people complained that
(asdf:oos 'asdf:load-op 'foo) was too verbose: If you don't like it,
write a little wrapper.  Many people probably use slime, anyway.
Maybe slime would like to add this capability?

Another consideration is that whenever cruft gets added to asdf, it
puts more compatibility constraints on whoever might want to write an
eventual successor.  For example, I've thought about that recently
(though I doubt I'll have the time to do it), and one of the thoughts
I had was that OPERATE should really take a component (or component
designator) as an argument, instead of a system.  So if you want to
operate on a single file, you could (asdf:operate 'asdf:load-op
'(system-a module-b file-c)), which conflicts with your suggestion.

-- 
Todd Sabin                                          <[email protected]>

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/