Pregunta: | 16663 - AYUDA CON GENERADORES Y COMPILADORES |
Autor: | Francisco Arias Larrea |
Necesito ayuda sobre las siguientes preguntas:
1. ¿Qué es un compilador redestinalbe? 2. ¿Un generador YACC puede utilizarse para producir.....? |
Respuesta: | José Manuel Díaz Bossini |
Creo que te puedo ayudar al menos a la 2 pregunta , la primera creo que es un problema de traducción y no entiendo bien lo que quieres decir, pero para la segunda YACC es un generador sintactico para C, utilizado para la creación de un compilador, como bien sabrás un compilador tiene varias etapas por llamarlo de alguna forma :
1.- Léxico , donde se define el conjunto de símbolos y palabras reservadas que tendrá tu compilador . 2.- Sintáctico donde se definen las reglas sintacticas del compilador, esto es por ejemplo , saber que que una sentencia condicional se forma con un IF (condicion) { codigo a ejecutar}. 3.- Semántico , que es donde se da sentido a todo lo demas , aqui es donde se definen reglas como la compatibilidad entre tipos y cosas asi. Todo esto sería complicadisimo de hacer a mano , para eso han surgido estas herramientas , yo estoy haciendo un proyecto fin de carrera en el que tengo que crear un compilador dirigido por sintaxis (no necesito preocuparme del semantico) , estoy usando JFLEX Y CUP que son los hermanos para Java de LEX y YACC que son para C. Tengo un buen libro electronico con ejemplos tanto de LEX Y YACC como de JFLEX Y CUP si lo quieres mandame mail y te lo paso. Espero haberte servido de ayuda |