Author: pmichaud
Date: Wed Jun 13 11:31:26 2007
New Revision: 18980

Modified:
   trunk/languages/perl6/src/parser/grammar_optok.pg

Log:
[perl6]:
* Change grammar_optok to use infix:<+> instead of 'infix:+' (part 1).


Modified: trunk/languages/perl6/src/parser/grammar_optok.pg
==============================================================================
--- trunk/languages/perl6/src/parser/grammar_optok.pg   (original)
+++ trunk/languages/perl6/src/parser/grammar_optok.pg   Wed Jun 13 11:31:26 2007
@@ -13,319 +13,319 @@
 ## setting traits needed for other stages in the
 ## translation.  (The parsing actually takes place in
 ## the <term> subrule.)
-proto 'circumfix:( )' is equiv('term:')
+proto circumfix:<( )> is equiv('term:')
     is expect(0)
     { ... }
 
-proto 'postcircumfix:( )' is equiv('term:') 
+proto postcircumfix:<( )> is equiv('term:') 
     is past('call')
     is expect(0)
     { ... }
 
 ## autoincrement
-proto 'postfix:++' is precedence('20=') is lvalue(1) { ... }
-proto 'postfix:--' is equiv('postfix:++') is lvalue(1) { ... }
-proto 'prefix:++' is equiv('postfix:++') is lvalue(1) { ... }
-proto 'prefix:--' is equiv('postfix:++') is lvalue(1) { ... }
+proto postfix:<++> is precedence('20=') is lvalue(1) { ... }
+proto postfix:<--> is equiv(postfix:<++>) is lvalue(1) { ... }
+proto prefix:<++> is equiv(postfix:<++>) is lvalue(1) { ... }
+proto prefix:<--> is equiv(postfix:<++>) is lvalue(1) { ... }
 
 
 ## exponentiation
-proto 'infix:**' is precedence('19=') { ... }
+proto infix:<**> is precedence('19=') { ... }
 
 ## symbolic unary
-proto 'prefix:!' is precedence('18=') { ... }
-proto 'prefix:+' is equiv('prefix:!') { ... }
+proto prefix:<!> is precedence('18=') { ... }
+proto prefix:<+> is equiv(prefix:<!>) { ... }
 
-proto 'prefix:-' is equiv('prefix:!')
+proto prefix:<-> is equiv(prefix:<!>)
     { ... }
 
-proto 'prefix:~' is equiv('prefix:!') { ... }
-proto 'prefix:?' is equiv('prefix:!') { ... }
-proto 'prefix:=' is equiv('prefix:!') { ... }
-proto 'prefix:*' is equiv('prefix:!') { ... }
-proto 'prefix:**' is equiv('prefix:!') { ... }
-proto 'prefix:~^' is equiv('prefix:!') { ... }
+proto prefix:<~> is equiv(prefix:<!>) { ... }
+proto prefix:<?> is equiv(prefix:<!>) { ... }
+proto prefix:<=> is equiv(prefix:<!>) { ... }
+proto prefix:<*> is equiv(prefix:<!>) { ... }
+proto prefix:<**> is equiv(prefix:<!>) { ... }
+proto prefix:<~^> is equiv(prefix:<!>) { ... }
 
-proto 'prefix:+^' is equiv('prefix:!') 
+proto prefix:<+^> is equiv(prefix:<!>) 
     is pirop('bnot')
     { ... }
 
-proto 'prefix:?^' is equiv('prefix:!') { ... }
-proto 'prefix:^' is equiv('prefix:!') { ... }
+proto prefix:<?^> is equiv(prefix:<!>) { ... }
+proto prefix:<^> is equiv(prefix:<!>) { ... }
 
 
 ## multiplicative
-proto 'infix:*' is precedence('17=')
+proto infix:<*> is precedence('17=')
     is pirop('n_mul')
     { ... }
 
-proto 'infix:/' is equiv('infix:*')
+proto infix:</> is equiv(infix:<*>)
     is pirop('n_div')
     { ... }
 
-proto 'infix:%' is equiv('infix:*')
+proto infix:<%> is equiv(infix:<*>)
     is post('mod')                     # perl6-orig
     { ... }
 
-proto 'infix:x' is equiv('infix:*')
+proto infix:<x> is equiv(infix:<*>)
     is post('repeat')                  # perl6-orig
     { ... }
 
-proto 'infix:xx' is equiv('infix:*') { ... }
+proto infix:<xx> is equiv(infix:<*>) { ... }
 
-proto 'infix:+&' is equiv('infix:*')
+proto infix:<+&> is equiv(infix:<*>)
     is post('band')                    # perl6-orig
     { ... }
 
-proto 'infix:+<' is equiv('infix:*')
+proto 'infix:+<' is equiv(infix:<*>)
     is post('shl')                     # perl6-orig
     { ... }
 
-proto 'infix:+>' is equiv('infix:*')
+proto 'infix:+>' is equiv(infix:<*>)
     is post('shr')                     # perl6-orig
     { ... }
 
-proto 'infix:~&' is equiv('infix:*')
+proto infix:<~&> is equiv(infix:<*>)
     is pir("    %r = bands %0, %1")    # perl6-orig
     { ... }
 
-proto 'infix:~<' is equiv('infix:*') { ... }
-proto 'infix:~>' is equiv('infix:*') { ... }
+proto 'infix:~<' is equiv(infix:<*>) { ... }
+proto 'infix:~>' is equiv(infix:<*>) { ... }
 
 
 ## additive
-proto 'infix:+' is precedence('16=')
+proto infix:<+> is precedence('16=')
     is pirop('n_add')
     { ... }
 
-proto 'infix:-' is equiv('infix:+')
+proto infix:<-> is equiv(infix:<+>)
     is pirop('n_sub')
     { ... }
 
-proto 'infix:~' is equiv('infix:+')
+proto infix:<~> is equiv(infix:<+>)
     is post('concat')                   # perl6-orig
     is returns('Str')
     { ... }
 
-proto 'infix:+|' is equiv('infix:+')
+proto infix:<+|> is equiv(infix:<+>)
     is post('bor')                      # perl6-orig
     { ... }
 
-proto 'infix:+^' is equiv('infix:+')
+proto infix:<+^> is equiv(infix:<+>)
     is post('bxor')                     # perl6-orig
     is pirop('bxor')
     { ... }
 
-proto 'infix:~|' is equiv('infix:+')
+proto infix:<~|> is equiv(infix:<+>)
     is post('bors')                     # perl6-orig
     is pirop('bors')
     { ... }
 
-proto 'infix:~^' is equiv('infix:+')
+proto infix:<~^> is equiv(infix:<+>)
     is post('bxors')                    # perl6-orig
     is pirop('bxors')
     { ... }
 
-proto 'infix:?|' is equiv('infix:+') { ... }
-proto 'infix:?^' is equiv('infix:+') { ... }
+proto infix:<?|> is equiv(infix:<+>) { ... }
+proto infix:<?^> is equiv(infix:<+>) { ... }
 
 
 ## junctive and (all)
-proto 'infix:&' is precedence('15=') { ... }
+proto infix:<&> is precedence('15=') { ... }
 
 
 ## junctive or (any)
-proto 'infix:|' is precedence('14=') { ... }
-proto 'infix:^' is equiv('infix:|') { ... }
+proto infix:<|> is precedence('14=') { ... }
+proto infix:<^> is equiv(infix:<|>) { ... }
 
 
 ## named unary
-proto 'prefix:rand' is precedence('13=')
+proto prefix:<rand> is precedence('13=')
     is nullterm
     { ... }
 
-proto 'prefix:sleep' is equiv('prefix:rand')
+proto prefix:<sleep> is equiv(prefix:<rand>)
     is nullterm
     { ... }
 
-proto 'prefix:abs' is equiv('prefix:rand')
+proto prefix:<abs> is equiv(prefix:<rand>)
     is nullterm
     is pirop('abs')
     { ... }
 
-proto 'prefix:-w' is equiv('prefix:rand') is nullterm { ... }
-proto 'prefix:-r' is equiv('prefix:rand') is nullterm { ... }
-proto 'prefix:-x' is equiv('prefix:rand') is nullterm { ... }
-proto 'prefix:-e' is equiv('prefix:rand') is nullterm { ... }
-proto 'prefix:-z' is equiv('prefix:rand') is nullterm { ... }
-proto 'prefix:-s' is equiv('prefix:rand') is nullterm { ... }
-proto 'prefix:-f' is equiv('prefix:rand') is nullterm { ... }
-proto 'prefix:-d' is equiv('prefix:rand') is nullterm { ... }
+proto prefix:<-w> is equiv(prefix:<rand>) is nullterm { ... }
+proto prefix:<-r> is equiv(prefix:<rand>) is nullterm { ... }
+proto prefix:<-x> is equiv(prefix:<rand>) is nullterm { ... }
+proto prefix:<-e> is equiv(prefix:<rand>) is nullterm { ... }
+proto prefix:<-z> is equiv(prefix:<rand>) is nullterm { ... }
+proto prefix:<-s> is equiv(prefix:<rand>) is nullterm { ... }
+proto prefix:<-f> is equiv(prefix:<rand>) is nullterm { ... }
+proto prefix:<-d> is equiv(prefix:<rand>) is nullterm { ... }
 
 
 ## nonchaining binary
 proto 'infix:<=>' is precedence('12=') is assoc('non') { ... }
-proto 'infix:cmp' is equiv('infix:<=>') { ... }
-proto 'infix:is' is equiv('infix:<=>') { ... }
-proto 'infix:but' is equiv('infix:<=>') { ... }
-proto 'infix:does' is equiv('infix:<=>') { ... }
-proto 'infix:..' is equiv('infix:<=>') { ... }
-proto 'infix:^..' is equiv('infix:<=>') { ... }
-proto 'infix:..^' is equiv('infix:<=>') { ... }
-proto 'infix:^..^' is equiv('infix:<=>') { ... }
-proto 'infix:ff' is equiv('infix:<=>') { ... }
-proto 'infix:^ff' is equiv('infix:<=>') { ... }
-proto 'infix:ff^' is equiv('infix:<=>') { ... }
-proto 'infix:^ff^' is equiv('infix:<=>') { ... }
-proto 'infix:fff' is equiv('infix:<=>') { ... }
-proto 'infix:^fff' is equiv('infix:<=>') { ... }
-proto 'infix:fff^' is equiv('infix:<=>') { ... }
-proto 'infix:^fff^' is equiv('infix:<=>') { ... }
+proto infix:<cmp> is equiv('infix:<=>') { ... }
+proto infix:<is> is equiv('infix:<=>') { ... }
+proto infix:<but> is equiv('infix:<=>') { ... }
+proto infix:<does> is equiv('infix:<=>') { ... }
+proto infix:<..> is equiv('infix:<=>') { ... }
+proto infix:<^..> is equiv('infix:<=>') { ... }
+proto infix:<..^> is equiv('infix:<=>') { ... }
+proto infix:<^..^> is equiv('infix:<=>') { ... }
+proto infix:<ff> is equiv('infix:<=>') { ... }
+proto infix:<^ff> is equiv('infix:<=>') { ... }
+proto infix:<ff^> is equiv('infix:<=>') { ... }
+proto infix:<^ff^> is equiv('infix:<=>') { ... }
+proto infix:<fff> is equiv('infix:<=>') { ... }
+proto infix:<^fff> is equiv('infix:<=>') { ... }
+proto infix:<fff^> is equiv('infix:<=>') { ... }
+proto infix:<^fff^> is equiv('infix:<=>') { ... }
 
 
 ## chaining binary
-proto 'infix:==' is precedence('11=') is assoc('chain')
+proto infix:<==> is precedence('11=') is assoc('chain')
     is past('chain')
     { ... }
 
-proto 'infix:!=' is equiv('infix:==')
+proto infix:<!=> is equiv(infix:<==>)
     is past('chain')
     { ... }
 
-proto 'infix:<' is equiv('infix:==')
+proto 'infix:<' is equiv(infix:<==>)
     is past('chain')
     { ... }
 
-proto 'infix:<=' is equiv('infix:==')
+proto 'infix:<=' is equiv(infix:<==>)
     is past('chain')
     { ... }
 
-proto 'infix:>' is equiv('infix:==')
+proto 'infix:>' is equiv(infix:<==>)
     is past('chain')
     { ... }
 
-proto 'infix:>=' is equiv('infix:==')
+proto 'infix:>=' is equiv(infix:<==>)
     is past('chain')
     { ... }
 
-proto 'infix:~~' is equiv('infix:==')
+proto infix:<~~> is equiv(infix:<==>)
     is past('chain')
     { ... }
 
-proto 'infix:!~' is equiv('infix:==')
+proto infix:<!~> is equiv(infix:<==>)
     is past('chain')
     { ... }
 
-proto 'infix:=~' is equiv('infix:==')
+proto infix:<=~> is equiv(infix:<==>)
     is past('chain')
     { ... }
 
-proto 'infix:eq' is equiv('infix:==')
+proto infix:<eq> is equiv(infix:<==>)
     is past('chain')
     { ... }
 
-proto 'infix:ne' is equiv('infix:==')
+proto infix:<ne> is equiv(infix:<==>)
     is past('chain')
     { ... }
 
-proto 'infix:lt' is equiv('infix:==')
+proto infix:<lt> is equiv(infix:<==>)
     is past('chain')
     { ... }
 
-proto 'infix:le' is equiv('infix:==')
+proto infix:<le> is equiv(infix:<==>)
     is past('chain')
     { ... }
 
-proto 'infix:gt' is equiv('infix:==')
+proto infix:<gt> is equiv(infix:<==>)
     is past('chain')
     { ... }
 
-proto 'infix:ge' is equiv('infix:==')
+proto infix:<ge> is equiv(infix:<==>)
     is past('chain')
     { ... }
 
-proto 'infix:=:=' is equiv('infix:==')
+proto infix:<=:=> is equiv(infix:<==>)
     is past('chain')
     { ... }
 
-proto 'infix:===' is equiv('infix:==')
+proto infix:<===> is equiv(infix:<==>)
     is past('chain')
     { ... }
 
 
 ## tight and
-proto 'infix:&&' is precedence('10=')
+proto infix:<&&> is precedence('10=')
     is past('if')
     { ... }
 
 
 ## tight or
-proto 'infix:||' is precedence('09=')
+proto infix:<||> is precedence('09=')
     is past('unless')
     { ... }
 
-proto 'infix:^^' is precedence('09=') is assoc('list')
+proto infix:<^^> is precedence('09=') is assoc('list')
     is past('xor')
     { ... }
 
-proto 'infix://' is equiv('infix:||') { ... }
+proto infix:<//> is equiv(infix:<||>) { ... }
 
 
 ## ternary
-proto 'ternary:?? !!' is precedence('08=') is assoc('right')
+proto ternary:<?? !!> is precedence('08=') is assoc('right')
     is past('if')
     { ... }
 
 
 ## assignment
-proto 'infix:=' is precedence('07=') is assoc('right')
+proto infix:<=> is precedence('07=') is assoc('right')
     is past('assign')
     is lvalue(1)
     { ... }
 
-proto 'infix::=' is equiv('infix:=') is past('bind') { ... }
-proto 'infix:::=' is equiv('infix:=') { ... }
-proto 'infix:.=' is equiv('infix:=') { ... }
-proto 'infix:~=' is equiv('infix:=') { ... }
-proto 'infix:+=' is equiv('infix:=') { ... }
-proto 'infix:-=' is equiv('infix:=') { ... }
-proto 'infix:*=' is equiv('infix:=') { ... }
-proto 'infix:/=' is equiv('infix:=') { ... }
-proto 'infix:%=' is equiv('infix:=') { ... }
-proto 'infix:x=' is equiv('infix:=') { ... }
-proto 'infix:Y=' is equiv('infix:=') { ... }
-proto 'infix:**=' is equiv('infix:=') { ... }
-proto 'infix:xx=' is equiv('infix:=') { ... }
-proto 'infix:||=' is equiv('infix:=') { ... }
-proto 'infix:&&=' is equiv('infix:=') { ... }
-proto 'infix://=' is equiv('infix:=') { ... }
-proto 'infix:^^=' is equiv('infix:=') { ... }
-proto 'infix:+<=' is equiv('infix:=') { ... }
-proto 'infix:+>=' is equiv('infix:=') { ... }
-proto 'infix:+|=' is equiv('infix:=') { ... }
-proto 'infix:+&=' is equiv('infix:=') { ... }
-proto 'infix:+^=' is equiv('infix:=') { ... }
-proto 'infix:~|=' is equiv('infix:=') { ... }
-proto 'infix:~&=' is equiv('infix:=') { ... }
-proto 'infix:~^=' is equiv('infix:=') { ... }
-proto 'infix:?|=' is equiv('infix:=') { ... }
-proto 'infix:?&=' is equiv('infix:=') { ... }
-proto 'infix:?^=' is equiv('infix:=') { ... }
-proto 'infix:|=' is equiv('infix:=') { ... }
-proto 'infix:&=' is equiv('infix:=') { ... }
-proto 'infix:^=' is equiv('infix:=') { ... }
+proto infix:<:=> is equiv(infix:<=>) is past('bind') { ... }
+proto infix:<::=> is equiv(infix:<=>) { ... }
+proto infix:<.=> is equiv(infix:<=>) { ... }
+proto infix:<~=> is equiv(infix:<=>) { ... }
+proto infix:<+=> is equiv(infix:<=>) { ... }
+proto infix:<-=> is equiv(infix:<=>) { ... }
+proto infix:<*=> is equiv(infix:<=>) { ... }
+proto infix:</=> is equiv(infix:<=>) { ... }
+proto infix:<%=> is equiv(infix:<=>) { ... }
+proto infix:<x=> is equiv(infix:<=>) { ... }
+proto infix:<Y=> is equiv(infix:<=>) { ... }
+proto infix:<**=> is equiv(infix:<=>) { ... }
+proto infix:<xx=> is equiv(infix:<=>) { ... }
+proto infix:<||=> is equiv(infix:<=>) { ... }
+proto infix:<&&=> is equiv(infix:<=>) { ... }
+proto infix:<//=> is equiv(infix:<=>) { ... }
+proto infix:<^^=> is equiv(infix:<=>) { ... }
+proto 'infix:+<=' is equiv(infix:<=>) { ... }
+proto 'infix:+>=' is equiv(infix:<=>) { ... }
+proto infix:<+|=> is equiv(infix:<=>) { ... }
+proto infix:<+&=> is equiv(infix:<=>) { ... }
+proto infix:<+^=> is equiv(infix:<=>) { ... }
+proto infix:<~|=> is equiv(infix:<=>) { ... }
+proto infix:<~&=> is equiv(infix:<=>) { ... }
+proto infix:<~^=> is equiv(infix:<=>) { ... }
+proto infix:<?|=> is equiv(infix:<=>) { ... }
+proto infix:<?&=> is equiv(infix:<=>) { ... }
+proto infix:<?^=> is equiv(infix:<=>) { ... }
+proto infix:<|=> is equiv(infix:<=>) { ... }
+proto infix:<&=> is equiv(infix:<=>) { ... }
+proto infix:<^=> is equiv(infix:<=>) { ... }
 
 
 ## list item separator
-proto 'infix:,' is precedence('06=') is assoc('list')
+proto infix:<,> is precedence('06=') is assoc('list')
    is nullterm { ... }
 ## TODO zip
 
 
 ## listop
 proto 'infix:<==' is precedence('05=') is assoc('right') { ... }
-proto 'prefix:true' is equiv('infix:<==') { ... }
-proto 'prefix:not' is equiv('infix:<==') { ... }
+proto prefix:<true> is equiv('infix:<==') { ... }
+proto prefix:<not> is equiv('infix:<==') { ... }
 
 ## TODO print push any all 
 ##    XXX: do these really belong here? ~particle
@@ -337,25 +337,25 @@
 
 
 ## loose and
-proto 'infix:and' is precedence('03=')
+proto infix:<and> is precedence('03=')
     is past('if')
     { ... }
 
 
 ## loose or
-proto 'infix:or' is precedence('02=')
+proto infix:<or> is precedence('02=')
     is past('unless')
     { ... }
 
-proto 'infix:xor' is equiv('infix:or')
+proto infix:<xor> is equiv(infix:<or>)
     is past('xor')
     { ... }
 
-proto 'infix:err' is equiv('infix:or') { ... }
+proto infix:<err> is equiv(infix:<or>) { ... }
 
 
 ## expression terminator
-proto 'infix:;' is precedence('01=') is assoc('list')
+proto infix:<;> is precedence('01=') is assoc('list')
     is nullterm
     is pirop('set')
     { ... }

Reply via email to