]> code.delx.au - gnu-emacs/commitdiff
Rephrase lexical binding requirement sentence.
authorTassilo Horn <tsdh@gnu.org>
Wed, 25 Dec 2013 09:12:24 +0000 (10:12 +0100)
committerTassilo Horn <tsdh@gnu.org>
Wed, 25 Dec 2013 09:12:24 +0000 (10:12 +0100)
* doc/lispref/control.texi (Pattern matching case statement): Rephrase lexical
binding requirement: the example needs it, not `pcase' itself.

doc/lispref/ChangeLog
doc/lispref/control.texi

index 595102bb5ef57e12a0f18cefa730b6b50f01656c..738dd417fd211d04564aba93702aa33589a92d88 100644 (file)
@@ -1,3 +1,8 @@
+2013-12-25  Tassilo Horn  <tsdh@gnu.org>
+
+       * control.texi (Pattern matching case statement): Rephrase lexical
+       binding requirement: the example needs it, not `pcase' itself.
+
 2013-12-25  Chong Yidong  <cyd@gnu.org>
 
        * eval.texi (Eval): Document the LEXICAL arg to eval.
index a9e7236fc3a02566f36a589ab6c4b0948ffb14f7..f5cdd3dc80feddedee89e1aca272d4ce2b79f736 100644 (file)
@@ -342,19 +342,20 @@ third elements and binds them to the variables @code{x} and @code{y}.
 @code{(pred numberp)} is a pattern that simply checks that @code{exp}
 is a number, and @code{_} is the catch-all pattern that matches anything.
 
+Note that the the lambda being the result of the @code{fn} clause is a
+closure (@pxref{Closures}), so the file defining @code{evaluate} must
+have lexical binding enabled (@pxref{Using Lexical Binding}, for how
+to enable it).
+
 Here are some sample programs including their evaluation results:
 
 @example
 (evaluate '(add 1 2) nil)                 ;=> 3
 (evaluate '(add x y) '((x . 1) (y . 2)))  ;=> 3
 (evaluate '(call (fn x (add 1 x)) 2) nil) ;=> 3
-(evaluate '(sub 1 2) nil)                 ;=> (error "Unknown expression (sub 1 2)")
+(evaluate '(sub 1 2) nil)                 ;=> error
 @end example
 
-Note that (parts of) @code{pcase} only work as expected with lexical
-binding, so lisp files using @code{pcase} should have enable it
-(@pxref{Using Lexical Binding}, for how to enable lexical binding).
-
 There are two kinds of patterns involved in @code{pcase}, called
 @emph{U-patterns} and @emph{Q-patterns}.  The @var{upattern} mentioned above
 are U-patterns and can take the following forms: