Author: autrijus
Date: Mon Apr  3 15:48:30 2006
New Revision: 8555

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

Log:
* S06: Make it clear that concat-means-concat for duplicated
       named arguments, and that it is possible to bind a tuple 
       into a scalar.

    sub fun (Int @x) { ... }
    fun( x => (1, 2), x => (3, 4) );    # @x := (1, 2, 3, 4)

    sub fun (Int $x) { ... }
    fun( x => (1, 2), x => (3, 4) );    # $x := (3, 4)


Modified: doc/trunk/design/syn/S06.pod
==============================================================================
--- doc/trunk/design/syn/S06.pod        (original)
+++ doc/trunk/design/syn/S06.pod        Mon Apr  3 15:48:30 2006
@@ -423,15 +423,17 @@
 to be concatenated:
 
     sub fun (Int @x) { ... }
-    fun( x => 1, x => 2 );  # @x := (1, 2)
+    fun( x => 1, x => 2 );              # @x := (1, 2)
+    fun( x => (1, 2), x => (3, 4) );    # @x := (1, 2, 3, 4)
 
 Other sigils binds only to the I<last> argument with that name:
 
     sub fun (Int $x) { ... }
-    f( x => 1, x => 2 );    # $x := 2
+    f( x => 1, x => 2 );                # $x := 2
+    fun( x => (1, 2), x => (3, 4) );    # $x := (3, 4)
 
-This means a defaults must come I<before> known named parameters,
-similar to how hash constructors work:
+This means a hash holding default values must come I<before> known named
+parameters, similar to how hash constructors work:
 
     # Allow "x" and "y" in %defaults be overrided
     f( *%defaults, x => 1, y => 2 );

Reply via email to