diff options
author | Basil L. Contovounesios <contovob@tcd.ie> | 2019-04-17 16:34:47 +0100 |
---|---|---|
committer | Basil L. Contovounesios <contovob@tcd.ie> | 2019-04-22 13:48:20 +0100 |
commit | 4430a9b54fca266e48d0eb8b72d83706910f10b8 (patch) | |
tree | 182029118aaac0c6702ac50dc787a3e0c952b891 /doc/lispref/internals.texi | |
parent | a2a51b4e94d3e058a71815cb309a21b707c3473b (diff) | |
download | emacs-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.texi | 7 |
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 |