Modularity & Parsing

Ralph Johnson johnson at cs.uiuc.edu
Mon Jan 4 13:41:43 UTC 1999


One thing to "factor in" to any discussion of parsing in Smalltalk
is the Refactoring Browser.  We reimplemented the Smalltalk parser
and have it running in VisualWorks, VisualAge, and Squeak.  The RB
is built upon a pattern matching engine that we use to analyze and
modify Smalltalk code.  It is entirely syntax based, which means
that it just matches abstract syntax trees.  It comes with a pretty
good formatter, too.

The parser is not tied into a code generator.  This means that if
it were to be used for the main parser, the optimization and code
generation would have to be rewritten.  It would probably be a lot
of work.  However, in the long run it doesn't make sense to have
two parsers in the system, so they need to be unified, and we think
that our abstract syntax system is cleaner than the others we've seen,
and is just as fast.

-Ralph





More information about the Squeak-dev mailing list