Compiladores

Solo disponible en BuenasTareas
  • Páginas : 3 (657 palabras )
  • Descarga(s) : 0
  • Publicado : 3 de septiembre de 2012
Leer documento completo
Vista previa del texto
Tarea 1

COCO/R

Coco/R es un generador de compilador, que toma una gramática EBNF atribuida de un lenguaje fuente y genera un scanner y un parser recursivo descendiente para ese lenguaje. Suplataforma es “Cross-platform”. Hay versiones de Coco/R para los lenguajes más modernos como Java, C#, C++, Pascal, Modula-2, Modula-3, Delphi, VB.Net, Python, Ruby entre otros.

El scanner trabajacomo un autómata finito determinístico. Soporta caracteres Unicode UTF-8. Reconoce tokens basados en el contexto de la mano derecha. También reconoce pragmas, que son tokens que no son partes de lasintaxis pero pueden ocurrir en cualquier lugar del stream del input.

El parser un lenguaje recursivo descendente; los conflictos de LL pueden ser resueltos por símbolos múltiples siguientes o porrevisiones de semántica. El manejo de error en el parser puede ser encendido especificando puntos sincronizados y símbolos débiles en la gramatica.

Los elementos básicos del Coco/R son identificadores,números, strings y constrantes de carácter, que son definidas como lo siguiente:

[pic]

Las mayúsculas son diferentes a las minúsculas. Algunas de las cadenas de caracteres son las siguientes:[pic]

En la figura de abajo se describe la entrada y salida de Coco/R

[pic]

Fuentes Consultadas
• http://en.wikipedia.org/wiki/Coco/R
• http://ssw.jku.at/Coco/
•http://ssw.jku.at/coco/Doc/UserManual.pdf

FLEX & BISON

Flex es una herramienta que permite generar analizadores léxicos. A partir de un conjunto de expresiones regulares, Flex busca concordancias en unfichero de entrada y ejecuta acciones asociadas a esas expresiones. Bison es un generador de analizadores sintácticos de propósito general que convierte una descripción para una gramática independientedel contexto en un programa en C que analiza esa gramática. Usándolo con Flex esta herramienta permite construir compiladores de lenguajes.

Los analizadores Bison necesitan una función llamada...
tracking img