Author: lwall Date: 2009-01-21 21:49:51 +0100 (Wed, 21 Jan 2009) New Revision: 24993
Modified: docs/Perl6/Spec/S03-operators.pod docs/Perl6/Spec/S12-objects.pod Log: [S03] more alignment with STD [S12] monkey patching now requires a special "use MONKEY_PATCHING" at the top Modified: docs/Perl6/Spec/S03-operators.pod =================================================================== --- docs/Perl6/Spec/S03-operators.pod 2009-01-21 20:25:19 UTC (rev 24992) +++ docs/Perl6/Spec/S03-operators.pod 2009-01-21 20:49:51 UTC (rev 24993) @@ -31,7 +31,7 @@ = ===== ======== N Terms 42 3.14 "eek" qq["foo"] $x :!verbose @$array L Method postfix .meth .+ .? .* .() .[] .{} .<> .«» .:: .= .^ .: - L Autoincrement ++ -- + N Autoincrement ++ -- R Exponentiation ** L Symbolic unary ! + - ~ ? | +^ ~^ ?^ \ ^ = L Multiplicative * / % +& +< +> ~& ~< ~> ?& div mod @@ -53,7 +53,7 @@ R List prefix : print push say die map substr ... [+] [*] any $ @ X Loose and and andthen X Loose or or xor orelse - L Sequencer <==, ==>, <<==, ==>> + X Sequencer <==, ==>, <<==, ==>> N Terminator ; {...}, unless, extra ), ], } Using two C<!> symbols below generically to represent any pair of operators @@ -76,6 +76,10 @@ R right !($a!) N non ILLEGAL +(In standard Perl there are no unaries that can take advantage of +associativity, since at each precedence level the standard operators +are either consistently prefix or postfix.) + Note that list associativity (X) only works between identical operators. If two different list-associative operators have the same precedence, they are assumed to be left-associative with respect to each other. Modified: docs/Perl6/Spec/S12-objects.pod =================================================================== --- docs/Perl6/Spec/S12-objects.pod 2009-01-21 20:25:19 UTC (rev 24992) +++ docs/Perl6/Spec/S12-objects.pod 2009-01-21 20:49:51 UTC (rev 24993) @@ -12,9 +12,9 @@ Maintainer: Larry Wall <la...@wall.org> Date: 27 Oct 2004 - Last Modified: 19 Dec 2008 + Last Modified: 21 Jan 2009 Number: 12 - Version: 67 + Version: 68 =head1 Overview @@ -1816,6 +1816,11 @@ replace a definition, use "C<is instead>" instead of "C<is also>"...but don't do that.) +In order to discourage casual misuse of these traits, they are not +allowed on global classes unless you put a special declaration at the top: + + use MONKEY_PATCHING; + For optimization purposes, Perl 6 gives the top-level application the right to close and finalize classes by the use of C<oo>, a pragma for selecting global semantics of the underlying object-oriented engine: