Project 2 becomes a package with procedure lex (or some other name). It must use the lexeme and symTable objects (stored in ads and adb files, and are refrred to as packages). The parser of course also accesses these two objects. Minimum test program: program abc dec x:int; begin Read(x) end. Productions involved: Objects - Records don't have 'embedded' member functions. Functions declared in a package are singletons and must have the record passed to them. - new is used for inheritance (in a declaration of a subclass) and dynamic allocation (when used in code). - An object name followed by a tick mark permits instantation of data members, parenthesized. - access 'class is used for declaring pointers that can be used polymorphically. - all is a keyword used to access data from a pointer, i.e. dereferences. DESIGN BEFORE CODING!!