Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Sede Retalhuleu
Facultad ingeniera en sistemas cc
Introduccin
Al igual que cualquier sistema de programacin para poder crear
podemos tomar en cuenta utilizar un editor para poder programar
nuestro compilador, existen muchas herramientas para facilitarnos el
trabajo, hay unos ms eficaces que otras, en esta ocasin vamos hablar
de las diferentes herramientas que podemos utilizar.
Desventajas:
- Genera analizadores menos eficientes que los generados por YACC.
- Los ficheros de especificacin de ANTLR son muy complejas.
- El proceso de depurado consta de las siguientes fases:
1)
2)
3)
4)
5)
JAVACC
- Inicialmente se llamo JACK.
- Similar al ANTLR.
- Analizador ascendente.
Ventajas:
- Buena integracin y los analizadores lxicos y sintctico.
- Genera analizadores sintcticos descendentes basados en la gramtica.
- Incluye la herramienta JJTREE para generar rboles sintcticos.
Desventajas:
- Las mismas que ANTLR
Otras herramientas
BYACC/JAVA
- Extensin de YACC para generar cdigo JAVA en vez de C/C++.
- Fichero de especificaciones igual que YACC
- Cdigo y declaraciones de lenguaje escritos en JAVA.
COCO/JAVA
- Generados de compiladores que a partir de la descripcin del lenguaje
mediante una gramtica LL genera un analizador sintctico y un analizador
lxico para dicho lenguaje.
CUP
COKTAIL
Conjunto de herramientas para construir compiladores
- REXgenerador de analizadores lxicos.
- LALRgenerador de analizadores sintcticos.
- ELLgenerador de analizadores sintcticos.
- ASTgenerador de rboles sintcticos.
- AGpermite procesar gramticas atribuidas.
ELI
- Combina una variedad de herramientas estndar para implementar potentes
estrategias en la construccin de compiladores.
- Se pueden generar automticamente implementaciones de lenguajes
completos a partir de las especificaciones de la aplicacin.
- Contiene libreras de especificaciones reusables.
PCCT
- Escrito inicialmente en C++ para generar compiladores en C++.
- Portado a JAVA y llamado ANTLR.XX
- Consta de 3 herramientas:
5)
JAVACC
- Inicialmente se llamo JACK.
- Similar al ANTLR.
- Analizador ascendente.
Ventajas:
- Buena integracin y los analizadores lxicos y sintctico.
- Genera analizadores sintcticos descendentes basados en la gramtica.
- Incluye la herramienta JJTREE para generar rboles sintcticos.
Desventajas:
- Las mismas que ANTLR
Otras herramientas
BYACC/JAVA
- Extensin de YACC para generar cdigo JAVA en vez de C/C++.
- Fichero de especificaciones igual que YACC
- Cdigo y declaraciones de lenguaje escritos en JAVA.
COCO/JAVA
- Generados de compiladores que a partir de la descripcin del lenguaje
mediante una gramtica LL genera un analizador sintctico y un analizador
lxico para dicho lenguaje.
CUP
- Versin LEX/YACC para JAVA (su forma de trabajo es anloga).
JACCIE
- JAVA BASED COMPILER.-Compiler in an Interactive Environment.
- Herramienta educativa que se puede utilizar para visualizar las tcnicas de
compilacin.
- Dos principales componentes: un generador de analizadores lxicos y una
variedad de generadores de generadores sintcticos.
JELL
- Es un generador de analizadores sintcticos que genera analizadores
descendentes a partir de gramticas LL.
Conclusin
En este trabajo se conocieron brevemente algunas de las diferentes
herramientas que existen para desarrollar compiladores, as como algunas de
sus caractersticas, ventajas y desventajas de las mismas para poder tener la
teora de que herramienta podremos adquirir para nuestro proyecto a futuro.
Cada programa o mtodo tiene formas de como facilitar la creacin de los
compiladores, aunque no existir la mejor aplicacin todas cuentas con
desventajas una de la otra y debemos saber cmo adecuar las herramientas
para el mejor resultado.