Lexical analyzers are specified using the matchscan
statement. This construct is responsible for generating the actual string
matching DFA. The actual buffering mechanisms are provided by the
classes LexerBuffer, IOLexerBuffer and IOLexerStack.
These classes are part of the support library distributed with Prop.
We assume that the user is familiar with lexer generator tools like lex[Les75] or flex[Pax90].