[Asdf-devel] Why does asdf use ``operate''?

Faré fahree at gmail.com
Fri Jul 4 22:01:06 UTC 2014

On Fri, Jul 4, 2014 at 5:26 PM, Mirko Vukovic <mirko.vukovic at gmail.com> wrote:
> Why does ASDF use the
> (operate operation-name arguments ...)
> convention instead of the more usual function call
> (function-name arguments ...)
> Even with `operate', eventually a function will be called.
> Also that one can define top level functions that call operate
> (defun foo (...)
>    (operate 'foo-operation ...))
> What does the extra layer of operate allow that generic functions and
> methods
> do not?
Shared behavior via multiple inheritance (in CLOS, after Flavors, we
call that mixins; in other languages, that's called traits) and
extensibility by defining a single method (see e.g. how poiu does it).

In addition to the code, I invite you to read the long version of my
recent ASDF article, with the source code at your side:

PS: Andreas Fuchs told me that POIU is now TV-famous!

—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org
I don't know if might makes right, but lack of might sure makes lack of right.

More information about the asdf-devel mailing list