A preprocessor, written by Kurt Bischoff of Iowa State University, that extends and generalises the syntax and semantics of Yacc, Lex, and C. Ox's support of LALR1 grammars generalises yacc in the way that attribute grammars generalise context-free grammars. It augments Yacc and Lex specifications with definitions of synthesised and inherited attributes written in C syntax. Ox checks these specifications for consistency and completeness, and generates a program that builds and decorates attributed parse trees. Ox accepts a most general class of attribute grammars. The user may specify postdecoration traversals for easy ordering of side effects such as code generation.