X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=man%2Fcl.texi;h=27d6d721ceb85c1408a17c4b98e5054132b05e81;hb=76759ab036458c54499a454399e19602b8ae6ce3;hp=f7607c921c4163c9044c8c97aa0cf252407d3905;hpb=77dcef404dc78635f6ffa8f71a803d2bc7cc8921;p=chise%2Fxemacs-chise.git.1 diff --git a/man/cl.texi b/man/cl.texi index f7607c9..27d6d72 100644 --- a/man/cl.texi +++ b/man/cl.texi @@ -7,6 +7,11 @@ @end iftex @ifinfo +@dircategory XEmacs Editor +@direntry +* Common Lisp: (cl). GNU Emacs Common Lisp emulation package. +@end direntry + This file documents the GNU Emacs Common Lisp emulation package. Copyright (C) 1993 Free Software Foundation, Inc. @@ -290,10 +295,10 @@ the Emacs name: @example defun* defsubst* defmacro* function* -member* assoc* rassoc* get* -remove* delete* mapcar* sort* -floor* ceiling* truncate* round* -mod* rem* random* +member* assoc* rassoc* remove* +delete* mapcar* sort* floor* +ceiling* truncate* round* mod* +rem* random* @end example Internal function and variable names in the package are prefixed @@ -1079,8 +1084,8 @@ car cdr caar .. cddddr nth rest first .. tenth aref elt nthcdr symbol-function symbol-value symbol-plist -get get* getf -gethash subseq +get getf gethash +subseq @end smallexample @noindent @@ -3213,8 +3218,8 @@ Emacs 19. @example (declaim (inline foo bar)) (eval-when (compile load eval) (proclaim '(inline foo bar))) -(proclaim-inline foo bar) ; XEmacs only -(defsubst foo (...) ...) ; instead of defun; Emacs 19 only +(proclaim-inline foo bar) ; XEmacs only +(defsubst foo (...) ...) ; instead of defun; Emacs 19 only @end example @strong{Please note:} This declaration remains in effect after the @@ -3292,7 +3297,7 @@ This package defines several symbol-related features that were missing from Emacs Lisp. @menu -* Property Lists:: `get*', `remprop', `getf', `remf' +* Property Lists:: `getf', `remf' * Creating Symbols:: `gensym', `gentemp' @end menu @@ -3301,31 +3306,9 @@ missing from Emacs Lisp. @noindent These functions augment the standard Emacs Lisp functions @code{get} -and @code{put} for operating on properties attached to symbols. +and @code{put} for operating on properties attached to objects. There are also functions for working with property lists as -first-class data structures not attached to particular symbols. - -@defun get* symbol property &optional default -This function is like @code{get}, except that if the property is -not found, the @var{default} argument provides the return value. -(The Emacs Lisp @code{get} function always uses @code{nil} as -the default; this package's @code{get*} is equivalent to Common -Lisp's @code{get}.) - -The @code{get*} function is @code{setf}-able; when used in this -fashion, the @var{default} argument is allowed but ignored. -@end defun - -@defun remprop symbol property -This function removes the entry for @var{property} from the property -list of @var{symbol}. It returns a true value if the property was -indeed found and removed, or @code{nil} if there was no such property. -(This function was probably omitted from Emacs originally because, -since @code{get} did not allow a @var{default}, it was very difficult -to distinguish between a missing property and a property whose value -was @code{nil}; thus, setting a property to @code{nil} was close -enough to @code{remprop} for most purposes.) -@end defun +first-class data structures not attached to particular objects. @defun getf place property &optional default This function scans the list @var{place} as if it were a property @@ -3352,11 +3335,11 @@ pair onto the list if the property is not yet present. (put sym prop val) @equiv{} (setf (getf (symbol-plist sym) prop) val) @end example -The @code{get} and @code{get*} functions are also @code{setf}-able. -The fact that @code{default} is ignored can sometimes be useful: +The @code{get} function is also @code{setf}-able. The fact that +@code{default} is ignored can sometimes be useful: @example -(incf (get* 'foo 'usage-count 0)) +(incf (get 'foo 'usage-count 0)) @end example Here, symbol @code{foo}'s @code{usage-count} property is incremented @@ -4648,7 +4631,7 @@ corresponding value is changed to the stored value. If @var{key} does not already exist, a new entry is added to the table and the table is reallocated to a larger size if necessary. The @var{default} argument is allowed but ignored in this case. The situation is -exactly analogous to that of @code{get*}; @pxref{Property Lists}. +exactly analogous to that of @code{get}; @pxref{Property Lists}. @end defun @defun remhash key table @@ -5566,8 +5549,8 @@ referring to the name of a function. In Emacs Lisp, it works just as well to use a regular quote: @example -(loop for x in y by #'cddr collect (mapcar #'plusp x)) ; Common Lisp -(loop for x in y by 'cddr collect (mapcar 'plusp x)) ; Emacs Lisp +(loop for x in y by #'cddr collect (mapcar #'plusp x)) ; Common Lisp +(loop for x in y by 'cddr collect (mapcar 'plusp x)) ; Emacs Lisp @end example When @code{#'} introduces a @code{lambda} form, it is best to