Except where noted, all functions defined by this package have the same names and calling conventions as their Common Lisp counterparts.
Following is a complete list of functions whose names were changed
from Common Lisp, usually to avoid conflicts with Emacs. In each
case, a `*
' has been appended to the Common Lisp name to obtain
the Emacs name:
defun* defsubst* defmacro* function* member* assoc* rassoc* get* remove* delete* mapcar* sort* floor* ceiling* truncate* round* mod* rem* random* last*
Internal function and variable names in the package are prefixed
by cl-
. Here is a complete list of functions not
prefixed by cl-
which were not taken from Common Lisp:
member delete remove remq rassoc floatp-safe lexical-let lexical-let* callf callf2 letf letf* defsubst* defalias add-hook eval-when-compile
(Most of these are Emacs 19 features provided to Emacs 18 users,
or introduced, like remq
, for reasons of symmetry
with similar features.)
The following simple functions and macros are defined in `cl.el
';
they do not cause other components like `cl-extra
' to be loaded.
eql floatp-safe abs endp evenp oddp plusp minusp butlast nbutlast caar .. cddddr list* ldiff rest first .. tenth member [1] copy-list subst mapcar* [2] adjoin [3] acons pairlis when unless pop [4] push [4] pushnew [3,4] incf [4] decf [4] proclaim declaim add-hook
[1] This is the Emacs 19-compatible function, not member*
.
[2] Only for one sequence argument or two list arguments.
[3] Only if :test
is eq
, equal
, or unspecified,
and :key
is not used.
[4] Only when place is a plain variable name.