Mercurial > hg > xemacs-beta
view man/lispref/index.texi @ 5562:855b667dea13
Drop cl-macro-environment in favour of byte-compile-macro-environment.
lisp/ChangeLog addition:
2011-09-04 Aidan Kehoe <kehoea@parhasard.net>
* bytecomp-runtime.el:
* bytecomp-runtime.el (byte-compile-macro-environment): Moved from
bytecomp.el.
* bytecomp.el:
* bytecomp.el (byte-compile-initial-macro-environment):
Add implementations for #'load-time-value, #'labels here, now
cl-macs respects byte-compile-macro-environment.
* bytecomp.el (byte-compile-function-environment):
* bytecomp.el (byte-compile-macro-environment): Removed.
* bytecomp.el (symbol-value):
* bytecomp.el (byte-compile-symbol-value): Removed.
* cl-extra.el (cl-macroexpand-all):
* cl-macs.el:
* cl-macs.el (bind-block):
* cl-macs.el (cl-macro-environment): Removed.
* cl-macs.el (cl-transform-lambda):
* cl-macs.el (load-time-value):
* cl-macs.el (block):
* cl-macs.el (flet):
* cl-macs.el (labels):
* cl-macs.el (macrolet):
* cl-macs.el (symbol-macrolet):
* cl-macs.el (lexical-let):
* cl-macs.el (apply):
* cl-macs.el (nthcdr):
* cl-macs.el (getf):
* cl-macs.el (substring):
* cl-macs.el (values):
* cl-macs.el (get-setf-method):
* cl-macs.el (cl-setf-do-modify):
* cl.el:
* cl.el (cl-macro-environment): Removed.
* cl.el (cl-macroexpand):
* obsolete.el (cl-macro-environment): Moved here.
Drop cl-macro-environment, in favour of
byte-compile-macro-environment; make the latter available in
bytecomp-runtime.el. This makes byte-compile-macro-environment far
less useless, since previously code that used cl-macs would ignore
it when calling #'cl-macroexpand-all.
Add byte-compiler-specific implementations for #'load-time-value,
#'labels. The latter is very nice indeed; it avoids the run-time
consing of the current implementation, is fully lexical and avoids
the run-time shadowing of symbol function slots that flet uses. It
would now be reasonable to move most core uses of flet to use
labels instead. Non-core code can't rely on print-circle for
mutually recursive functions, though, so it's less of an evident
win.
author | Aidan Kehoe <kehoea@parhasard.net> |
---|---|
date | Sun, 04 Sep 2011 20:37:55 +0100 |
parents | 576fb035e263 |
children |
line wrap: on
line source
@c -*-texinfo-*- @setfilename ../../info/index.info @c Indexing guidelines @c I assume that all indexes will be combined. @c Therefore, if a generated findex and permutations @c cover the ways an index user would look up the entry, @c then no cindex is added. @c Concept index (cindex) entries will also be permuted. Therefore, they @c have no commas and few irrelevant connectives in them. @c I tried to include words in a cindex that give the context of the entry, @c particularly if there is more than one entry for the same concept. @c For example, "nil in keymap" @c Similarly for explicit findex and vindex entries, e.g. "print example". @c Error codes are given cindex entries, e.g. "end-of-file error". @c pindex is used for .el files and Unix programs @node Index, , Standard Hooks, Top @unnumbered Index @ignore All variables, functions, keys, programs, files, and concepts are in this one index. All names and concepts are permuted, so they appear several times, one for each permutation of the parts of the name. For example, @code{function-name} would appear as @b{function-name} and @b{name, function-}. Key entries are not permuted, however. @end ignore @c Print the indices @printindex fn