Documente Academic
Documente Profesional
Documente Cultură
Uno de los generadores más conocidos y uno de los más utilizados en nuestro país es
YACC, sin embargo, aquel que ha hecho uso de ambientes de desarrollo modernos para
lenguajes de programación con representaciones gráficas para las jerarquías de
instancias de conceptos del lenguaje de programación, puede sentirse incómodo al usar
una herramientas al estilo de YACC.
PARSER GENERATOR
Parser Generator[BUM99] es un pequeño ambiente integrado para el trabajo con YACC
y LEX bajo Windows. Incluye sendas implementaciones ("flavours") de ambas
herramientas hechas por el mismo autor, a las cuales llama AYACC y ALEX, y que
adicionan ciertas características atractivas al producto, pero por lo demás padece de las
mismas deficiencias de YACC y LEX.
VISUAL PARSE++
Para el análisis sintáctico se usan expresiones regulares con una pila, dando la
posibilidad de definir símbolos terminales a ignorar. El análisis sintáctico se especifica
mediante gramáticas libres del contexto de la clase LALR (1) .La implementación del
reconocimiento permite que pueda hacerse evento a evento (la función de análisis
retorna el evento sucedido); o de una vez, retornando éxito o fracaso. El resto de las
fases de procesamiento del lenguaje se deben implementar en el lenguaje destino
insertándolas en el código generado. El lenguaje de destino de la generación puede ser
C, C++, Java, Delphi y Visual Basic. En los lenguajes que soportan el concepto de clase,
la implementación consiste en un conjunto de clases especializadas. Aquella que
implementa el análisis sintáctico contiene una función "reduce" en la cual se inserta el
código correspondiente a las acciones semánticas, y el objeto que retorna se inserta en
la pila del autómata.
MJØLNER
"Mjølner BETA System" es un ambiente de programación dirigido primariamente al
soporte de la programación orientada a objetos, e integra alrededor del compilador para
el lenguaje de programación orientado a objetos BETA, un navegador y un editor de
programas, un depurador de errores, un constructor de interfaces gráficas, una
herramienta CASE que usa UML, y un generador de analizadores (el sistema de
metaprogramación).
JAVACC
JavaCC es una herramienta creada por Sun Microsystems. Sigue el estilo de
herramientas independientes, cuya interacción es por la línea de comandos.
Usa expresiones regulares para el análisis lexicográfico y gramáticas LL(k) L-atributadas
para el análisis sintáctico. Las gramáticas incluyen la operación de clausura y la
estructura opcional, pudiéndose insertar las acciones semánticas en cualquier lugar de
la producción. Para el reconocimiento usa "lookahead" local, que puede ser combinado
con "lookahead" sintáctico y "lookahead" semántico. definido en la gramática.