Front page | perl.perl6.language |
Postings from April 2006
[svn:perl6-synopsis] r8935 - doc/trunk/design/syn
From:
larry
Date:
April 24, 2006 19:38
Subject:
[svn:perl6-synopsis] r8935 - doc/trunk/design/syn
Message ID:
20060425023841.AEBDCCBA47@x12.develooper.com
Author: larry
Date: Mon Apr 24 19:38:40 2006
New Revision: 8935
Modified:
doc/trunk/design/syn/S02.pod
Log:
Clarifications on adverbs.
Modified: doc/trunk/design/syn/S02.pod
==============================================================================
--- doc/trunk/design/syn/S02.pod (original)
+++ doc/trunk/design/syn/S02.pod Mon Apr 24 19:38:40 2006
@@ -14,7 +14,7 @@
Date: 10 Aug 2004
Last Modified: 24 Apr 2006
Number: 2
- Version: 31
+ Version: 32
This document summarizes Apocalypse 2, which covers small-scale
lexical items and typological issues. (These Synopses also contain
@@ -1187,9 +1187,8 @@
=item *
-There is now a generalized adverbial form of Pair notation:
-
-The following table shows the correspondence:
+There is now a generalized adverbial form of Pair notation. The
+following table shows the correspondence to the "fatarrow" notation:
Fat arrow Adverbial pair
========= ==============
@@ -1215,8 +1214,12 @@
turns into C<('a')> rather than C<('a',)>.
Two or more adverbs can always be strung together without intervening
-punctuation anywhere a single adverb is acceptable. When used as named
-arguments, you may put comma between. See S06.
+punctuation anywhere a single adverb is acceptable. When used as
+named arguments in an argument list, you may put comma between,
+because they're just ordinary named arguments to the function, and
+a fatarrow pair would work the same. When modifying an operator
+(that is, when one occurs where an operator is expected), you may
+not put commas between, and the fatarrow form is not allowd. See S06.
The negated form (C<:!a>) and the sigiled forms (C<:$a>, C<:@a>,
C<:%a>) never take an argument and don't care what the next character is.
@@ -1224,11 +1227,19 @@
The other forms of adverb (including the bare C<:a> form) I<always>
look for an immediate bracketed argument, and will slurp it up.
-If that's not intended, you must use whitespace between the adverb
-and the opening bracket.
-
-Despite not being a subscript, the brackets are parsed as postfix operators,
-and may be separated from their C<:foo> with dot or "long dot".
+If that's not intended, you must use whitespace between the adverb and
+the opening bracket. The syntax of individual adverbs is the same
+everywhere in Perl 6. There are no exceptions based on whether an
+argument is wanted or not. Except as noted above, the parser always
+looks for the brackets. Despite not indicating a true subscript,
+the brackets are similarly parsed as postfix operators. As postfixes
+the brackets may be separated from their initial C<:foo> with either
+dot or "long dot", but nothing else.
+
+Regardless of syntax, adverbs used as named arguments generally show
+up as optional named parameters to the function in question--even
+if the function is an operator or macro. The function in question
+neither knows nor cares how weird the original syntax was.
=item *
-
[svn:perl6-synopsis] r8935 - doc/trunk/design/syn
by larry