emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: eval-after-load not harmful after all (Was: Re: Why js-2mode?)


From: Drew Adams
Subject: RE: eval-after-load not harmful after all (Was: Re: Why js-2mode?)
Date: Mon, 10 Aug 2009 10:01:21 -0700

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 Carsten
described.

I agree with Daniel, Carsten, and others that `eval-after-load' should not be
demonized.

The manual's text should be changed to suggest using it only when appropriate -
and then describe when it might be appropriate. IOW, we should _explain_ this,
so users understand it.


---

The manual sometimes seems to have difficulty dealing with the tradeoff of
providing (a) simple guidelines and (b) information that can suggest behavior
that runs counter to the simple guidelines in particular contexts. (No, I don't
have specific passages in mind, off the top of my head.)

The Elisp manual is above all a reference manual. Users expect it to be fairly
complete, even if that sometimes means presenting complex material that is not
black-and-white.

The idea is to _both_ (a) give the 80-95% general guideline (and its rationale)
and (b) give additional info that can address the other 20-5% of use cases.
What's important is to explain what's happening and why: rationale, use cases,
maybe examples.

The two, opposite dangers are:

(1) Oversimplifying, presenting only a "rule" that gets memorized, promulgated,
and promoted like a catechism. Not sufficiently teaching the why: what's
happening, rationale, exceptions, use cases.

(2) Not sufficiently drawing attention to the main practice that we recommend
for general use most of the time. Drowning the reader in a complex mass of
countervailing considerations.

It's not necessarily easy to get this right, to handle both the general case and
the specifics. Providing rationale and reasoning goes a long way to presenting
these two sides. The goal, after all, is not just respect of "the rule" but user
understanding.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]