emacs-diffs
[Top][All Lists]
Advanced

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

master ba0be8d: Document named-let and update some NEWS tags


From: Lars Ingebrigtsen
Subject: master ba0be8d: Document named-let and update some NEWS tags
Date: Mon, 13 Sep 2021 05:53:26 -0400 (EDT)

branch: master
commit ba0be8df532a497f67bb5fc0188a0ac3c7278b39
Author: Lars Ingebrigtsen <larsi@gnus.org>
Commit: Lars Ingebrigtsen <larsi@gnus.org>

    Document named-let and update some NEWS tags
    
    * doc/lispref/variables.texi (Local Variables): Document `named-let'.
---
 doc/lispref/variables.texi | 19 +++++++++++++++++++
 etc/NEWS                   |  8 +++++++-
 2 files changed, 26 insertions(+), 1 deletion(-)

diff --git a/doc/lispref/variables.texi b/doc/lispref/variables.texi
index 3b03318..9646daa 100644
--- a/doc/lispref/variables.texi
+++ b/doc/lispref/variables.texi
@@ -302,6 +302,25 @@ Binding}), but it's impractical to @code{defvar} these 
variables.
 the forms, and then make the variables non-special again.
 @end defspec
 
+@defspec named-let name bindings &rest body
+This special form is like @code{let}: It binds the variables in
+@var{bindings}, and then evaluates @var{body}.  However,
+@code{named-let} allows you to call @var{body} recursively by calling
+@var{name}, where the arguments passed to @var{name} are used as the
+new values of the bound variables in the recursive invocation.
+
+Here's a trivial example:
+
+@lisp
+(named-let foo
+    ((a 1)
+     (b 2))
+  (nconc (list a b)
+         (and (= a 1) (foo 3 4))))
+     @result{} (1 2 3 4)
+@end lisp
+@end defspec
+
   Here is a complete list of the other facilities that create local
 bindings:
 
diff --git a/etc/NEWS b/etc/NEWS
index 4e70208..db98dbb 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -3828,6 +3828,7 @@ Until it is solved you could ignore such errors by 
performing
 
     (setq debug-ignored-errors (cons 'remote-file-error debug-ignored-errors))
 
++++
 ** New macro 'named-let' added to subr-x.el.
 It provides Scheme's "named let" looping construct.
 
@@ -3840,6 +3841,7 @@ non-nil value to get back the old behavior, whereby after 
reading
 from a subprocess, Emacs would check for output of other subprocesses
 in a way that is likely to read from the same process again.
 
++++
 ** 'set-process-buffer' now updates the process mark.
 The mark will be set to point to the end of the new buffer.
 
@@ -4041,6 +4043,7 @@ form below the header line.  It is enabled by default in
 ---
 ** 'ascii' is now a coding system alias for 'us-ascii'.
 
+---
 ** New coding-systems for EBCDIC variants.
 New coding-systems 'ibm256', 'ibm273', 'ibm274', 'ibm277', 'ibm278',
 'ibm280', 'ibm281', 'ibm284', 'ibm285', 'ibm290', 'ibm297'.  These are
@@ -4103,8 +4106,11 @@ The new variable 'xwidget-webkit-download-dir' says 
where to download to.
 
 ---
 *** New command 'xwidget-webkit-clone-and-split-below'.
+Open a new window below displaying the current URL.
+
+---
 *** New command 'xwidget-webkit-clone-and-split-right'.
-These are used in 'xwidget-webkit-mode'.
+Open a new window to the right displaying the current URL.
 
 ---
 *** New variable 'xwidget-webkit-enable-plugins'.



reply via email to

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