summaryrefslogtreecommitdiff
path: root/doc/lispref/internals.texi
diff options
context:
space:
mode:
authorBasil L. Contovounesios <contovob@tcd.ie>2019-04-17 16:34:47 +0100
committerBasil L. Contovounesios <contovob@tcd.ie>2019-04-22 13:48:20 +0100
commit4430a9b54fca266e48d0eb8b72d83706910f10b8 (patch)
tree182029118aaac0c6702ac50dc787a3e0c952b891 /doc/lispref/internals.texi
parenta2a51b4e94d3e058a71815cb309a21b707c3473b (diff)
downloademacs-4430a9b54fca266e48d0eb8b72d83706910f10b8.tar.gz
emacs-4430a9b54fca266e48d0eb8b72d83706910f10b8.tar.bz2
emacs-4430a9b54fca266e48d0eb8b72d83706910f10b8.zip
Improve pure and side-effect-free docs
For discussion, see thread starting at: https://lists.gnu.org/archive/html/emacs-devel/2019-04/msg00316.html * doc/lispref/customize.texi (Composite Types): Do not overspecify :match-alternatives predicates. * doc/lispref/eval.texi (Intro Eval): Anchor definition of "side effect" for cross-referencing... * doc/lispref/functions.texi (What Is a Function): ...from here. Define what a pure function is. * doc/lispref/internals.texi (Writing Emacs Primitives): Describe currently preferred approach to marking primitives as pure and side-effect-free. * doc/lispref/symbols.texi (Standard Properties): Expand description of pure and side-effect-free properties.
Diffstat (limited to 'doc/lispref/internals.texi')
-rw-r--r--doc/lispref/internals.texi7
1 files changed, 3 insertions, 4 deletions
diff --git a/doc/lispref/internals.texi b/doc/lispref/internals.texi
index fc5ce594e61..25892d4b57c 100644
--- a/doc/lispref/internals.texi
+++ b/doc/lispref/internals.texi
@@ -1031,10 +1031,9 @@ number of arguments. They work by calling @code{Ffuncall}.
@file{lisp.h} contains the definitions for some important macros and
functions.
- If you define a function which is side-effect free, update the code
-in @file{byte-opt.el} that binds @code{side-effect-free-fns} and
-@code{side-effect-and-error-free-fns} so that the compiler optimizer
-knows about it.
+ If you define a function which is side-effect free or pure, give it
+a non-@code{nil} @code{side-effect-free} or @code{pure} property,
+respectively (@pxref{Standard Properties}).
@node Writing Dynamic Modules
@section Writing Dynamically-Loaded Modules