Este projeto demonstra a construção de dois analisadores léxicos simples (reconhecedores para números naturais e identificadores) usando duas técnicas de modelagem e implementação diferentes: gramáticas regulares e Extended Backus-Naur Form (EBNF), como apresentada por Wirth (2014).
No caso da gramática regular, sua implementação é realizada por meio da codificação de autômatos finitos. Já na EBNF, segue-se as regras estipulada por Wirth (2014) visando a implementação descendente-recursiva.
Cada função do código-fonte foi nomeada para que fique claro qual elementos léxico é reconhecido e qual técnica de implementação foi usada. Além disso, comentários antes de cada uma fornecem informações adicionais, incluindo quais são os modelos formais de cada reconhecedor (gramáticas e EBNFs).
WIRTH, Niklaus. Compiler Construction. Zürich, 2014. Disponível em: http://http://www.inf.ethz.ch/personal/wirth/CompilerConstruction/index.html. Acessado em 22 jun 2015.