Author: larry
Date: Wed Apr  2 09:43:45 2008
New Revision: 14534

Modified:
   doc/trunk/design/syn/S02.pod

Log:
Some fossil unspace verbiage cleaned up on recommendation of John M. Dlugosz++


Modified: doc/trunk/design/syn/S02.pod
==============================================================================
--- doc/trunk/design/syn/S02.pod        (original)
+++ doc/trunk/design/syn/S02.pod        Wed Apr  2 09:43:45 2008
@@ -12,9 +12,9 @@
 
   Maintainer: Larry Wall <[EMAIL PROTECTED]>
   Date: 10 Aug 2004
-  Last Modified: 31 Mar 2008
+  Last Modified: 2 Apr 2008
   Number: 2
-  Version: 131
+  Version: 132
 
 This document summarizes Apocalypse 2, which covers small-scale
 lexical items and typological issues.  (These Synopses also contain
@@ -224,23 +224,23 @@
 Perl requires an absence of whitespace between a noun and a postfix
 operator, using unspace lets you line up postfix operators:
 
-    %hash\  .{$key}
-    @array\ .[$ix]
-    $subref\.($arg)
+    %hash\  {$key}
+    @array\ [$ix]
+    $subref\($arg)
 
-As a special case to support the use above, a backslashed dot where
+As a special case to support the use above, a backslash where
 a postfix is expected is considered a degenerate form of unspace.
 Note that whitespace is not allowed before that, hence
 
-    $subref \.($arg)
+    $subref \($arg)
 
 is a syntax error (two terms in a row).  And
 
-    foo \.($arg)
+    foo \($arg)
 
-will be parsed as a list operator with an argument:
+will be parsed as a list operator with a C<Capture> argument:
 
-    foo(\$_.($arg))
+    foo(\($arg))
 
 However, other forms of unspace may usefully be preceded by whitespace.
 (Unary uses of backslash may therefore never be followed by whitespace
@@ -297,8 +297,10 @@
         OUTPUT
 
 Note that this is one of those cases in which it is fine to have
-whitespace before the unspace.  (Note also that the example above
-is not meant to spec how the test suite works. :)
+whitespace before the unspace, since we're only trying to suppress
+the newline transition, not all whitespace as in the case of postfix
+parsing.  (Note also that the example above is not meant to spec how
+the test suite works. :)
 
 =item *
 
@@ -346,6 +348,8 @@
 
     $x.++
 
+    $x\ ++
+
     $x\ .++
 
     $x\#( comment ).++
@@ -1481,11 +1485,13 @@
 
     &foo($arg1, $arg2);
 
-Whitespace is not allowed before the parens, but there is a
-corresponding C<.()> operator, plus the "unspace" forms that allow
-you to insert optional whitespace and comments between the backslash
-and the dot:
+Whitespace is not allowed before the parens because it it is parsed as
+a postfix.  As with any postfix, there is also a corresponding C<.()>
+operator, and you may use the "unspace" form to insert optional
+whitespace and comments between the backslash and either of the
+postfix forms:
 
+    &foo\   ($arg1, $arg2);
     &foo\   .($arg1, $arg2);
     &foo\#[
         embedded comment
@@ -1838,7 +1844,7 @@
 
     MyType::<$foo>
     MyType.::.{'$foo'}          # same thing with dots
-    MyType\ .::\ .{'$foo'}      # same thing with unspaces
+    MyType\ ::\ {'$foo'}        # same thing with unspaces
 
 (Directly subscripting the type with either square brackets or curlies
 is reserved for various generic type-theoretic operations.  In most other
@@ -2939,9 +2945,9 @@
 pairs.  To align values of option pairs, you may use the
 "unspace" postfix forms:
 
-    :longkey\  .($value)
-    :shortkey\ .<string>
-    :fookey\   .{ $^a <=> $^b }
+    :longkey\  ($value)
+    :shortkey\ <string>
+    :fookey\   { $^a <=> $^b }
 
 These will be interpreted as
 

Reply via email to