This is a study into applying Object-Oriented principles to a LR(1) compiler/compiler, its grammar language, and the emission of output tables containing class objects. The grammar's entities--rules, subrules, and terminals--are viewed as class structures defined in the C$\sp{++}$ language. Woven into the grammar's language are constructs supporting syntax-directed C$\sp{++}$ code. Object-Oriented design decisions are discussed in supporting the grammar's symbols and various bottom-up behaviors, the definition of the grammar language documented, and executed grammar examples illustrated with commentary.