unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Luc Teirlinck <teirllm@dms.auburn.edu>
Cc: emacs-devel@gnu.org
Subject: Re: eval-after-load as a macro (and eval-next-after-load)
Date: Mon, 7 Apr 2003 07:50:30 -0500 (CDT)	[thread overview]
Message-ID: <200304071250.h37CoUh16788@eel.dms.auburn.edu> (raw)
In-Reply-To: <84y92mslqe.fsf@lucy.is.informatik.uni-duisburg.de> (kai.grossjohann@gmx.net)

Kai Grossjohann wrote:

   So what's left is a good name for the new macro.  Then the docstring
   for eval-after-load could point to the new macro, and old code
   wouldn't change behavior at all :-)

I believe that, in that case, the quote below from the Elisp manual
must be reworded too.  If that quote is accurate, we are trying very
hard to make writing badly designed code more convenient, which does
not seem to be a very meaningful activity.  Actually, if the quote
would be accurate, then it would be very bad that there is that much
old code that uses the function.  The quote below clearly says that it
is *not* OK to use this function outside of sloppy personal
customizations.  (Which might only mean that there is something wrong
with the quote itself.)

>From C-h i g (elisp)Hooks for Loading:
(talking about eval-after-load)

   In general, well-designed Lisp programs should not use this feature.
The clean and modular ways to interact with a Lisp library are (1)
examine and set the library's variables (those which are meant for
outside use), and (2) call the library's functions.  If you wish to do
(1), you can do it immediately--there is no need to wait for when the
library is loaded.  To do (2), you must load the library (preferably
with `require').

   But it is OK to use `eval-after-load' in your personal
customizations if you don't feel they must meet the design standards for
programs meant for wider use.

Sincerely,

Luc.

  parent reply	other threads:[~2003-04-07 12:50 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-04-04 20:30 eval-after-load as a macro (and eval-next-after-load) Stefan Monnier
2003-04-05  8:13 ` Richard Stallman
2003-04-06 21:05   ` Stefan Monnier
2003-04-07  9:25     ` Kai Großjohann
2003-04-07  9:33       ` Miles Bader
2003-04-07 12:50       ` Luc Teirlinck [this message]
2003-04-07 13:36         ` Kai Großjohann
2003-04-07 19:05           ` Luc Teirlinck
2003-04-07 19:43             ` Kai Großjohann
2003-04-07 20:04               ` Luc Teirlinck
2003-04-07 20:19                 ` Kai Großjohann
2003-04-07 19:35           ` Luc Teirlinck
2003-04-08  2:31           ` Richard Stallman
2003-04-08 10:46             ` Kim F. Storm
2003-04-08 10:21               ` Kai Großjohann
2003-04-08 18:17               ` Stefan Monnier
2003-04-09 23:41                 ` Kim F. Storm
2003-04-09  1:59               ` Richard Stallman
2003-04-09  2:31                 ` Miles Bader
2003-04-10  0:00                 ` Kim F. Storm
2003-04-10 22:47                   ` Richard Stallman
2003-04-07 17:04     ` Juanma Barranquero
2003-04-07 17:56       ` Stefan Monnier
2003-04-07 19:50         ` Juanma Barranquero
2003-04-08  2:31       ` Richard Stallman
2003-04-13 18:55         ` Juanma Barranquero
2003-04-14  7:10           ` Juanma Barranquero
2003-04-05 15:57 ` Kai Großjohann

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200304071250.h37CoUh16788@eel.dms.auburn.edu \
    --to=teirllm@dms.auburn.edu \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).