Subject: Re: bug#16402: 24.3.50; Document nadvice.el stuff in Elisp manual before Emacs 24.4

From: Stefan Monnier <[email-masked]>
Date: Fri, 10 Jan 2014 16:50:01 -0500

> Agreed.  nadvice sounds like a good implementation change.  The advice
> *interface*, however, isn't going away, so I'm hesitant to recommend the
> nadvice interface as well.

The problems that advice-add fixes as compared to defadvice are either
problems in the interface, or internal problems which were not solved by
retargetting defadvice on top of advice-add.  IOW they're still in
defadvice and are not likely to disappear any time soon.

The advice-add interface is simpler, which is why I advocate it.

> (Yes, we can tell users that advice is deprecated, but then a very
> large amount of working elisp code users see is "deprecated".

Yes, it'll take time for the code to move to advice-add.  There's not
much we can do about it.

I don't think advice.el will really disappear, just like cl.el won't
really disappear.  Maybe at some point it'll move to GNU ELPA, tho.

>>> - advice.el is much too large to be preloaded,
>>> so for example debug.el refrained from using it.
> So what if it's large? Isn't it *because* a commonly-used package is large
> that we want to preload it? This way, we pay up-front for the cost of
> loading that package instead of making users load it on each start.

Could be.  But the fact is that advice.el was not preloaded because it
was perceived to be too big and not used enough to justify it.  And in
many cases the reason why it wasn't used is because it didn't seem worth
the trouble loading this big package just to tweak this little function.

        Stefan