[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:
  https://github.com/fare/asdf3-2013/

PS: Andreas Fuchs told me that POIU is now TV-famous!
http://moviecode.tumblr.com/post/88826139010/in-real-humans-akta-manniskor-some-common-lisp

—♯ƒ • 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