XML — Architecture, Tools, Techniques - Department of Computer ...
XML — Architecture, Tools, Techniques - Department of Computer ...
XML — Architecture, Tools, Techniques - Department of Computer ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Handler is a GoalMakerFactory which constructs a single Trace object. shift() verifies<br />
that there is only a single observer. The trace <strong>of</strong> 3+4*5 suggests that it could be converted into<br />
an expression tree:<br />
$ java -classpath .:oops.jar oops.Compile -f Handler expr.ser Scanner > /dev/null<br />
GoalMakerFactory is Handler<br />
3+4*5<br />
handler shift Number 3<br />
handler reduce 3<br />
handler shift handler reduced<br />
handler reduce 3 [reduced]<br />
handler shift handler reduced<br />
handler shift "+" +<br />
handler shift Number 4<br />
handler reduce 3 [reduced] [reduced] + 4<br />
handler shift handler reduced<br />
handler shift "*" *<br />
handler shift Number 5<br />
handler reduce 3 [reduced] [reduced] + 4 [reduced] * 5<br />
handler shift handler reduced<br />
handler reduce 3 [reduced] [reduced] + 4 [reduced] * 5 [reduced]<br />
handler shift handler reduced<br />
handler reduce 3 [reduced] [reduced] + 4 [reduced] * 5 [reduced] [reduced]<br />
handler shift handler reduced<br />
handler shift "\n" null<br />
handler shift "\n" null<br />
handler reduce 3 [reduced] [reduced] + 4 [reduced] * 5 [reduced] [reduced] [reduced]<br />
The additional \n is synthesized by the scanner (which otherwise would have to read ahead).<br />
44