|
From: | Daniel Colascione |
Subject: | Re: eval-after-load not harmful after all (Was: Re: Why js-2mode?) |
Date: | Mon, 10 Aug 2009 23:06:41 -0400 |
On Aug 10, 2009, at 8:43 PM, Stephen J. Turnbull wrote:
Drew Adams writes:In Icicles, I sometimes `require' other libraries explicitly. But in a few cases I use `eval-after-load' instead - for exactly the kind of thing that Carstendescribed.I agree with Daniel, Carsten, and others that `eval-after-load' should not bedemonized.I have no objection to use of `eval-after-load' in user or site files that are disabled by emacs -q. But `eval-after-load' in core files is like smoking in an elevator next to a pregnant woman. It's very convenient, maybe even "necessary", from the point of view of the user of the feature, but he doesn't bear the pain of debugging a Heisenbug that appears for the user of random-package-using-e-a-l.
You haven't actually addressed the reason for using e-a-l and provided alternatives, nor have you provided any concrete examples of the harm e-a-l might cause. You've just put "necessary" in scare quotes without even considering the idea that it might actually *be* necessary.
If packages M needs to work with optional package Q, then there are two approaches: either M can use eval-after-load to customize Q, or Q can include a list of every possible M with which it can be used. You might decry the former, but I don't think the latter is any more maintainable.
[Prev in Thread] | Current Thread | [Next in Thread] |