Name: Interpreter Intent: - define the AST of a language and interpret the AST (processor for the textual representation of a problem) - replace code with data Structure: - sometimes the AST is a composite - interpretation is in the base class (overridden in subclasses) Notes: - the language should be simple - efficiency is not crucial - often works with a Visitor ------------------------------------------------------------------ Name: LittleLanguage Intent: - construct the AST of a language from an external representation Structure: - there is tokenizer (scanner) - there is a parser - in parser there is a method for each non-terminal of the grammar - this method can be constructed mechanically from the grammar rule