SoloCodigo
Programación General => Java => Mensaje iniciado por: eL _aLaN_ en Miércoles 12 de Diciembre de 2007, 06:09
-
Hola, alguien sabe como puedo hacer un analizador sintactico en java o que clases puedo usar para elaborarlo???
-
que tal si tratas de analizar uyn poco mas el problema
-
TE RECOMIENDO UN BUEN LIBRO QUE TRATA DE ESTRUCTURA DE DATOS ENTRE LAS COSAS QUE TRATA ESTA EL ANALIZADOR JAVA ES UN MUY BUEN ANALIZADOR JAVA.
ESTRUCTURA DE DATOS EN JAVA.
EL AUTOR ES MARK ALLEN WEISS.
-
Para eso te recomendaria mas bien uno llamado matematica de la computacion, o teoria de la computacion, no recuerdo exactamente, pero algunas universidades imparten eso como una materia, temas respecto a lo que llaman 'modelos matematicos' como las 'maquinas de estados finitos', y las 'maquinas de turing' etc. Es como una base para los compiladoes y analizadores de semantica y sintaxis. De todas formas creo que si hay informacion en internet sobre eso.
-
Buen en general lo que tenes que hacer es primero usar jlex y cup para leer el archivo fuente con una estructura definida como por ejemplo
E->e+e
|e*e etc.
la aplicacion debe saber cual es terminal y no terminal, por ejemplo E es terminal y e,+ son simbolos no terminales, deberias saber donde empieza tu gamatica , e ir introduciendo cada simbolo en una lista como un objeto Vector por ejemplo, no se si ya sabes la teoria de esto que esta en el libro del dragon "Compiladores" principios y tecnicas y herramientas de Aho y sethi, entonces en tu vector tambien deberias llevar el punto con lo cual analizas los estados y vas generando la tabla de transicion de estados automaticamente, cuando tengas la tabla de estados de transiciones
usas regex para ir analizando las cadenas que vienen. :hola: