Topics for COSC170 midterm exam The exam is in class on Monday, Mar 7. General outline of compiler structure Scanner -> Parser -> Semantic Checker -> Code Generator (or Evaluator) Grammars, derivations Parse trees Ambiguous grammars Syntax directed translation Associated attributes Semantic actions Recursive descent parser Use of symbol table Tokens, lexemes, patterns Using JLex to specify a scanner Regular Expressions for patterns returning tokens and attributes ignoring comments and white space state states (e.g. COMMENT) LL(1) (predictive) parse table FIRST and FOLLOW sets