Perl 6 Compiler Design and Implementation of the Perl 6 Compiler #26

A longer expression parse tree

$P1 = $P0("c = (a + b) * 4")
$P1."dump"("$/")

produces

$/: <c = (a + b) * 4 @ 0> 
$/<opparse>: <c = (a + b) * 4 @ 0> opname=infix:=
           <token>: <= @ 2> 
           <args>[0]: <c @ 0> 
           <args>[1]: <(a + b) * 4 @ 4> opname=infix:*
                    <token>: <* @ 12> 
                    <args>[0]: <(a + b) @ 4> opname=circumfix:( )
                             <token>: <( @ 4>
                             <args>[0]: <a + b @ 5> opname=infix:+
                                      <token>: <+ @ 7> 
                                      <args>[0]: <a @ 5> 
                                      <args>[1]: <b @ 9> 
                    <args>[1]: <4 @ 12> 
Copyright © 2005 Patrick R. Michaud