in reply to Parse::RecDescent Puzzlement
/slv1expr : <leftop:lv2expr addsub lv1expr> { my @ops = @{$item[1]}; my $res = shift @ops; while (@ops) { my ($op, $num) = (shift@ops, shift@ops); if ($op eq '+') { $res+= $num } else { $res -= $num; } } $return = $res; } # ... addsub: /[-+]/
|
|---|