Unification of a programming language with a definition language creates a
powerful tool for object-oriented programming. A programming language is
extended to include definition language constructs. In a compiler
environment, a compiler recognizes the definition language constructs in
programming language code. The compiler environment unifies
representation of the definition language information and programming
language code in a unified parse tree, and derives semantic meaning from
definition language information. The compiler environment also checks for
lexical, syntax, and semantic errors.