[Asdf-devel] :AROUND methods

Faré fahree at gmail.com
Fri Jun 6 22:23:38 UTC 2014


On Fri, Jun 6, 2014 at 5:46 PM, Robert P. Goldman <rpgoldman at sift.info> wrote:
> Trying to identify what's breaking my system in the syntax-case branch,
> I found a bunch of around methods in ASDF.
>
> IIRC once upon a time we had removed all the :AROUND methods on exported
> generic functions, on the grounds that they could unpredictably interact
> with programmers' extensions.
>
> I think we experimented with using a bespoke method combination method
> to allow ourselves to have our own around methods and "arounder" methods
> for programmers.
>
> Even more vaguely, I think I remember that the method-combination
> extension didn't work reliably on all implementations, so it was
> stripped out.  But I thought when that happened, we tried to excise the
> use of method combination in ASDF.
>
> Am I hallucinating this?
>
> I'd be grateful to anyone whose memory of this stuff is better.
>
At some point during ASDF1 days (aa52ad2 from 2008-09-09 by csr21), a
new asdf:around method combination was introduced so that ASDF's own
:around methods would override any user-provided :around method, all
the while allowing such user-provided :around method. This was removed
in the lead up to ASDF2 (826b12b0 aka 1.636 from 2010-03-15 by me),
for better portability to implementations that didn't support the
"long" method combination format (I believe CLISP and ABCL at the
time, though they added them since, possibly others).

So we *are* using the regular :around method combination, but in one
case, I've split a gf in two: perform became perform and
perform-with-restarts.

—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org
Down to Gehenna or up to the Throne,
He travels the fastest who travels alone. — Rudyard Kipling




More information about the asdf-devel mailing list