Puede encontrar documentación y pequeños tutoriales del lenguaje en nuestro wiki en GitHub
Matrox es desarrollado en Java con la ayuda de JFlex, generador de analizadores léxicos y Cup, generador de analizadores sintácticos. Ambas librerias se incluyen en la carpeta libs/
.
Los archivos MatroxLexer.flex
y MatroxParser.cup
ubicados en la carpeta src/edu/unitec/matrox/
son los archivos fuente para JFlex y Cup.
Para compilar el archivo MatroxLexer.flex realice los siguientes pasos:
- Vaya a la carpeta
libs/
- Abra el archivo
jflex-1.6.0.jar
- Click en el botón
Browse
enLexical specification
- Ubique el archivo
src/edu/unitec/matrox/MatroxLexer.flex
- Click en el botón
Generate
Verá la creación de la clase Lexer.java
en el directorio.
Para compilar el archivo MatroxParser.cup realice los siguientes pasos:
- Abra una terminal
- Muevase hasta la carpeta
src/edu/unitec/matrox/
- Escriba el comando
java -jar ../../../../libs/java-cup-11b.jar -parser Parser MatroxParser.cup
- Se generan dos clases
Parser.java
ysym.java
, dondeParser.java
tiene toda la lógica del analizador sintáctico ysym.java
contiene los terminales dentro de la gramática definida en el archivoMatroxParser.cup
.
Proyecto de la clase de Compiladores en UNITEC Tegucigalpa, desarrollado por Guillermo R. Mazzoni y Edilson F. Gonzalez
Tarea | EFG | GRM |
---|---|---|
Analizador Léxico | 50% | 50% |
Analizador Sintáctico | 50% | 50% |
AST | 50% | 50% |
Errores | 50% | 50% |