changeset 10913:880d7c28921c

Change in eval-after-load; advise not using it.
author Richard M. Stallman <rms@gnu.org>
date Fri, 03 Mar 1995 06:49:59 +0000
parents be434b59c22e
children 413d44c0bd41
files lispref/loading.texi
diffstat 1 files changed, 14 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/lispref/loading.texi	Fri Mar 03 06:48:20 1995 +0000
+++ b/lispref/loading.texi	Fri Mar 03 06:49:59 1995 +0000
@@ -583,7 +583,8 @@
 
 @defun eval-after-load library form
 This function arranges to evaluate @var{form} at the end of loading the
-library @var{library}, if and when @var{library} is loaded.
+library @var{library}, if and when @var{library} is loaded.  If
+@var{library} is already loaded, it evaluates @var{form} right away.
 
 The library name @var{library} must exactly match the argument of
 @code{load}.  To get the proper results when an installed library is
@@ -594,6 +595,18 @@
 execution of the rest of @var{form}.
 @end defun
 
+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 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 @code{require}).
+
+But it is to use @code{eval-after-load} in your personal customizations
+if you don't feel they must meet the design standards of programs to be
+released.
+
 @defvar after-load-alist
 An alist of expressions to evaluate if and when particular libraries are
 loaded.  Each element looks like this: