Author: larry Date: Tue Dec 5 17:19:40 2006 New Revision: 13489 Modified: doc/trunk/design/syn/S04.pod doc/trunk/design/syn/S06.pod
Log: C<gather> now allows any statement, just like C<do>. Modified: doc/trunk/design/syn/S04.pod ============================================================================== --- doc/trunk/design/syn/S04.pod (original) +++ doc/trunk/design/syn/S04.pod Tue Dec 5 17:19:40 2006 @@ -12,9 +12,9 @@ Maintainer: Larry Wall <[EMAIL PROTECTED]> Date: 19 Aug 2004 - Last Modified: 16 Oct 2006 + Last Modified: 5 Dec 2006 Number: 4 - Version: 44 + Version: 45 This document summarizes Apocalypse 4, which covers the block and statement syntax of Perl. @@ -406,6 +406,12 @@ explicit because it's not out front where it can be seen. You can, of course, use a placeholder parameter if you also use C<return>.) +A variant of C<do> is C<gather>. Like C<do>, it is followed by a +statement or block, and executes it once. Unlike C<do>, its return +value is a specified by calling the C<take> function one or more +times within the dynamic scope of the gather. The returned values are +flattened into a lazy list. + =head1 Switch statements A switch statement is a means of topicalizing, so the switch keyword Modified: doc/trunk/design/syn/S06.pod ============================================================================== --- doc/trunk/design/syn/S06.pod (original) +++ doc/trunk/design/syn/S06.pod Tue Dec 5 17:19:40 2006 @@ -2432,10 +2432,8 @@ or more succinctly (and lazily): sub pair ([EMAIL PROTECTED]) { - gather { - for @LIST -> $key, $val { - take $key => $val; - } + gather for @LIST -> $key, $val { + take $key => $val; } }