"How-to" request

Marco Antoniotti marco.antoniotti at unimib.it
Fri Mar 19 18:56:44 UTC 2021


Thanks Robert.

AFAIAC the operation-done-p did the trick.  I had skipped it as the doc
says that this operation "may" be provided.

I am not sure how to improve the docs for this task (creating new
operations).  I guess a description of what OPERATE and PERFORM actually
invoke and when would help.

All the best

Marco



On Fri, Mar 19, 2021 at 7:42 PM Robert Goldman <rpgoldman at sift.info> wrote:

> Hi. I'm happy to help you work through this, but so that it doesn't recur
> as a problem, I'd appreciate it if you would help me fix the manual's
> discussion of this.
>
> First, have you read this page
> https://common-lisp.net/project/asdf/asdf.html#Creating-new-operations ?
>
> Please have a look at that -- it's not very long -- and let us know what
> more needs to be supplied.
>
> I note the discussion of operation-done-p. I suspect that is your problem
> -- your new operation is not aware that it needs to be performed.
>
> This page is substantially redundant with the pages on the object model,
> and should be beefed up with cross-references, and more inclusion of
> docstrings...
>
> On 19 Mar 2021, at 12:58, Marco Antoniotti wrote:
>
> Hi
>
> I am trying to create a new ASDF:OPERATION, but I must be missing
> something and the manual (or Google) does not seem to help much.
>
> How do you create a new operation, which may be quite simple?  Or better,
> how do you get PERFORM and/or OPERATE to actually do something for you.
>
> I know I should RTFM, but in this case it is more of a RTFC, which is far
> more difficult.
>
> I tried the following
>
> (defclass my-op (non-propagating-operation) ())
>
> (defmethod perform ((o my-op) (s system))
>    (print 42))
>
> (defmethod operate ((o my-op) (s system) &key &allow-other-keys)
>    (print 666))
>
> But then, doing
>
> cl-user 42> (operate 'my-op (find-system "somesys") :bar 1024)
> #<MY-OP >
> #<ASDF/PLAN:SEQUENTIAL-PLAN 2301B97B>
>
> is all I get.
>
> Any tutorial or advice?
>
> Thanks
>
> --
> Marco Antoniotti, Associate Professor         tel. +39 - 02 64 48 79 01
> DISCo, Università Milano Bicocca U14 2043 http://dcb.disco.unimib.it
> Viale Sarca 336
> I-20126 Milan (MI) ITALY
>
>

-- 
Marco Antoniotti, Associate Professor         tel. +39 - 02 64 48 79 01
DISCo, Università Milano Bicocca U14 2043 http://dcb.disco.unimib.it
Viale Sarca 336
I-20126 Milan (MI) ITALY
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/asdf-devel/attachments/20210319/4003ca7b/attachment.html>


More information about the asdf-devel mailing list