emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] /srv/bzr/emacs/trunk r110699: More cl.texi updates


From: Glenn Morris
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r110699: More cl.texi updates
Date: Sat, 27 Oct 2012 19:34:36 -0700
User-agent: Bazaar (2.5.0)

------------------------------------------------------------
revno: 110699
committer: Glenn Morris <address@hidden>
branch nick: trunk
timestamp: Sat 2012-10-27 19:34:36 -0700
message:
  More cl.texi updates
  
  * doc/misc/cl.texi (Multiple Values, Common Lisp Compatibility):
  More namespace updates.
  (Obsolete Features): Copyedits.
  (Obsolete Lexical Macros, Obsolete Setf Customization): New subsections.
  
  * etc/NEWS: Related edits.
modified:
  doc/misc/ChangeLog
  doc/misc/cl.texi
  etc/NEWS
=== modified file 'doc/misc/ChangeLog'
--- a/doc/misc/ChangeLog        2012-10-28 02:05:04 +0000
+++ b/doc/misc/ChangeLog        2012-10-28 02:34:36 +0000
@@ -1,5 +1,11 @@
 2012-10-28  Glenn Morris  <address@hidden>
 
+       * cl.texi (Multiple Values, Common Lisp Compatibility):
+       More namespace updates.
+       (Obsolete Features): Copyedits.
+       (Obsolete Lexical Macros, Obsolete Setf Customization):
+       New subsections.
+
        * cl.texi (Porting Common Lisp, Lexical Bindings):
        Add some xrefs to the Elisp manual.
 

=== modified file 'doc/misc/cl.texi'
--- a/doc/misc/cl.texi  2012-10-28 02:05:04 +0000
+++ b/doc/misc/cl.texi  2012-10-28 02:34:36 +0000
@@ -806,7 +806,7 @@
 constructs.
 
 @c FIXME
address@hidden flet is not cl-flet, values is not cl-values.
address@hidden flet is not cl-flet.
 @menu
 * Assignment::             The @code{cl-psetq} form.
 * Generalized Variables::  Extensions to generalized variables.
@@ -815,7 +815,7 @@
 * Blocks and Exits::       @code{cl-block}, @code{cl-return}, 
@code{cl-return-from}.
 * Iteration::              @code{cl-do}, @code{cl-dotimes}, @code{cl-dolist}, 
@code{cl-do-symbols}.
 * Loop Facility::          The Common Lisp @code{cl-loop} macro.
-* Multiple Values::        @code{values}, @code{cl-multiple-value-bind}, etc.
+* Multiple Values::        @code{cl-values}, @code{cl-multiple-value-bind}, 
etc.
 @end menu
 
 @node Assignment
@@ -2660,7 +2660,7 @@
 @code{get-setf-method}).  This package @emph{does} define placeholders
 for the Common Lisp functions that work with multiple values, but
 in Emacs Lisp these functions simply operate on lists instead.
-The @code{values} form, for example, is a synonym for @code{list}
+The @code{cl-values} form, for example, is a synonym for @code{list}
 in Emacs.
 
 @defmac cl-multiple-value-bind (address@hidden) values-form address@hidden
@@ -4701,9 +4701,9 @@
 The multiple-value return facility treats lists as multiple
 values, since Emacs Lisp cannot support multiple return values
 directly.  The macros will be compatible with Common Lisp if
address@hidden or @code{values-list} is always used to return to
address@hidden or @code{cl-values-list} is always used to return to
 a @code{cl-multiple-value-bind} or other multiple-value receiver;
-if @code{values} is used without @address@hidden
+if @code{cl-values} is used without @address@hidden
 or vice-versa the effect will be different from Common Lisp.
 
 Many Common Lisp declarations are ignored, and others match
@@ -4927,11 +4927,15 @@
 @appendix Obsolete Features
 
 This section describes some features of the package that are obsolete
-and should not be used in new code.  They are only provided by the old
address@hidden entry point, not by the newer @file{cl-lib.el}.
+and should not be used in new code.  They are either only provided by
+the old @file{cl.el} entry point, not by the newer @file{cl-lib.el};
+or where versions with a @samp{cl-} prefix do exist they do not behave
+in exactly the same way.
 
 @menu
-* Lexical Bindings::    An approximation of lexical binding.
+* Lexical Bindings::            An approximation of lexical binding.
+* Obsolete Lexical Macros::     Obsolete macros using lexical-let.
+* Obsolete Setf Customization:: Obsolete ways to customize setf.
 @end menu
 
 @node Lexical Bindings
@@ -5050,6 +5054,46 @@
 are made sequentially in the manner of @code{let*}.
 @end defmac
 
address@hidden Obsolete Lexical Macros
address@hidden Macros Defined Using Lexical-Let
+
+The following macros are defined using @code{lexical-let}.
+They are replaced by versions with a @samp{cl-} prefix that use true
+lexical binding (and hence rely on @code{lexical-binding} being set to
address@hidden in code using them).
+
address@hidden flet (address@hidden) address@hidden
+Replaced by @code{cl-flet} (@pxref{Function Bindings})
+or @code{cl-letf} (@pxref{Modify Macros}).
address@hidden defmac
+
address@hidden labels (address@hidden) address@hidden
+Replaced by @code{cl-labels} (@pxref{Function Bindings}).
address@hidden defmac
+
address@hidden letf (address@hidden) address@hidden
+Replaced by @code{cl-letf} (@pxref{Modify Macros}).
address@hidden defmac
+
address@hidden Obsolete Setf Customization
address@hidden Obsolete Ways to Customize Setf
+
+This section describes some obsolete ways to extend @code{setf}.
+They are replaced by @file{gv.el} in Emacs 24.3.
+
address@hidden FIXME.
address@hidden define-setf-expander name arglist &rest body
+Use @file{gv.el}.
address@hidden defmac
+
address@hidden defsetf access-fn update-fn
+Use @file{gv.el}.
address@hidden defmac
+
address@hidden define-modify-macro name arglist function [doc-string]
+Use @file{gv.el}.
address@hidden defmac
+
 
 @node GNU Free Documentation License
 @appendix GNU Free Documentation License

=== modified file 'etc/NEWS'
--- a/etc/NEWS  2012-10-27 05:03:52 +0000
+++ b/etc/NEWS  2012-10-28 02:34:36 +0000
@@ -323,11 +323,17 @@
 to the `lexical-let' machinery used previously) to capture definitions in
 closures, so such closures will only work if `lexical-binding' is in use.
 
+*** `cl-letf' is not exactly like `letf'.
+
 +++
 *** `progv' was rewritten to use the `let' machinery.
 A side effect is that vars without corresponding value are bound to nil
 rather than making them unbound.
 
+*** The following methods of extending `setf' are obsolete.
+Use gv.el instead (FIXME; details).
+`define-setf-expander', `defsetf', `define-modify-macro'
+
 ** Compilation mode
 +++
 *** New option `compilation-always-kill'.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]