develooper Front page | perl.perl6.language | Postings from July 2010

r31651 -[S13] try to make multisig semantics slightly more generic so sigs can do better pattern matching

Thread Next
From:
pugs-commits
Date:
July 12, 2010 16:59
Subject:
r31651 -[S13] try to make multisig semantics slightly more generic so sigs can do better pattern matching
Message ID:
20100712235937.32290.qmail@feather.perl6.nl
Author: lwall
Date: 2010-07-13 01:59:37 +0200 (Tue, 13 Jul 2010)
New Revision: 31651

Modified:
   docs/Perl6/Spec/S13-overloading.pod
Log:
[S13] try to make multisig semantics slightly more generic so sigs can do better pattern matching


Modified: docs/Perl6/Spec/S13-overloading.pod
===================================================================
--- docs/Perl6/Spec/S13-overloading.pod	2010-07-12 23:51:27 UTC (rev 31650)
+++ docs/Perl6/Spec/S13-overloading.pod	2010-07-12 23:59:37 UTC (rev 31651)
@@ -99,12 +99,14 @@
 that will be imported wherever they are needed.
 
 When you use the multiple signature syntax, the alternate signatures
-must all bind the same set of formal variable names, though they
-are allowed to vary in any other way, such as by type, or by which
-parameters are considered optional or named-only or slurpy.  In other
-words, the compiler is allowed to complain if any of the alternatives
-omits any of the variable names.  This is intended primarily to catch
-editing errors.
+are not required to all bind the same set of formal variable names,
+nor are all parameters of a given name required to bind with the
+same type.  Unbound parameters will be born with an undefined value
+(even if they have a default).  For any parameter that occurs in
+multiple signatures with non-identical nominal types, the actual
+lexical variable will declared with a nominal type of C<Mu>, and
+if unbound, will contain C<Mu>.  To catch parameter name typos,
+the compiler may warn about unused parameters.
 
 Conjectural: If the first parameter to a C<multi> signature is followed
 by an invocant colon, that signature represents two signatures, one


Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About