On 3/22/12 Mar 22 -2:37 AM, Faré wrote:
On Thu, Mar 22, 2012 at 02:05, Dmitriy Ivanov divanov11@gmail.com wrote:
Another question I have got is the relationship between ASDF and LispWorks defsystem rules. LW definitions are quite obvious.
:caused-by If any of dependee actions are already in the current plan (as a result of other rules executing successfully, or as a result of default system behavior), they trigger successful execution of this rule, i.e. the operation on the target component.
:requires The actions that need to be performed before the rule can execute successfully. This is a list of operation-component descriptions that should be planned before the action on the target component.
In my understanding, ASDF :in-order-to is equivalent to :caused-by, and :do-first is equivalent :requires. Is this correct?
Sounds about right.
I would even rename the ASDF ones to match the LispWorks name, if I were sure to fix all the references (Are there any beyond ASDF and POIU?).
Is this really feasible?
While I agree the old names are not ideal, the collateral damage of changing them seems extensive.
depends-on and in-order-to are exposed through the defsystem grammar, and could be used all over the place.
Benefits: mildly tidier naming; Costs: potentially extensive breakage.
I really do mean "mildly" there, too. I don't think "caused-by" is so much clearer that it's worth anything. Either way you need to read the documentation to understand the meaning of :in-order-to and :do-first, or :caused-by and :requires. And the asymmetry of the passive voice in the former and the active voice in the latter seems odd enough to not help with clarity.
Best, Robert