This seems like it might be a good FAQ, and we had some correspondence about a related query earlier.
(sort (mapcar #'asdf:component-name (mapcar #'cdr (remove-if-not #'(lambda (x) (and (typep (cdr x) 'asdf/system:system) (typep (car x) 'asdf:load-op))) (asdf::traverse (make-instance 'asdf::load-op) (asdf:find-system "hunchentoot") :force :all)))) #'string-lessp)
This requires knowing a bit about the internals of ASDF and relies on an obsoleted function (TRAVERSE).
Maybe we should wrap this up and provide it as part of an ASDF query API?
Cheers, r
P.S. Sorry about the horrible word-wrapping...