Botón “Next
El botón “Next” cambia cada vez que es presionado, representando el siguiente paso en el proceso de compilación.
- Ingresar la Gramática
Durante este paso la aplicación verifica la sintaxis de la gramática y prepara la aplicación para generar las tablas de análisis. Si se encuentra algún error, éste es reportado al usuario y el proceso se reinicia.
- Ingresar la Gramática
Durante este paso la aplicación verifica la sintaxis de la gramática y prepara la aplicación para generar las tablas de análisis. Si se encuentra algún error, éste es reportado al usuario y el proceso se reinicia.
- Generar el analizador
Durante este paso la aplicación trata de construir las tablas del análisis sintáctico LALR. La mayoría de los conflictos ocurren durante la creación de estas tablas, por lo cual son construidas antes.
- Generar los tokens
Durante este paso la aplicación trata de crear las tablas del automata finito determinístico usando el generador de tokens (scanner).
- Guardar la Gramática Compilada
Permite almacenar las tablas de la gramática compilada en un archivo (.cgt).
Menú de Gold Parser
File
1. New
Establece un nuevo documento para crear gramáticas.
2. New Grammar Wizard
Abre un asistente para crear gramáticas con opciones comunes a establecer en una gramática.
3. Open
Abre un archivo de GOLD Parser.
4. Save
Guarda la gramática actual como un archivo de GOLD Parser.
5. Save As…
Permite guardar la gramática actual con un nombre específico.
6. Import a YACC/Bison Grammar…
Permite importar a GOLD Parser una gramática creada con la sintaxis de YACC/Bison.
7. Print
Manda a imprimir la gramática.
8. Page Setup…
Permite establecer las opciones de impresión.
9. Lista de Archivos Recientes
Se listan los últimos 5 archivos abiertos en GOLD Parser.
10. Exit
Sale de la aplicación.
Edit
- Undo
Deshace la última acción realizada.
- Redo
Rehace la última acción deshecha.
- Cut
Corta el texto seleccionado al portapapeles.
- Copy
Copia el texto seleccionado al portapapeles.
- Paste
Pega el texto contenido en el portapapeles.
- Delete
Borra el texto seleccionado.
- Select All
Selecciona todo el contenido del documento.
- Indent
Establece una sangría al texto seleccionado.
- Unindent
Borra la sangría establecida a un texto seleccionado.
10. Comment
Establece como comentario el texto seleccionado.
11. Uncomment
Quita como comentario el texto seleccionado.
12. Auto Align
Estable una alineación automática al texto seleccionado.
Search
1. Find…
Permite buscar un texto en el documento.
- Replace…
Permite reemplazar un texto por otro en el documento.
- Go To Line
Permite desplazarse a una línea específica del documento.
- Toggle Bookmark
Establece un marcador a una línea del documento.
- Previous Bookmark
Permite saltar al anterior marcador establecido antes de la posición del cursor en el documento.
- Next Bookmark
Permite saltar al siguiente marcador establecido después de la posición del cursor en el documento.
- Clear All Bookmarks
Borra todos los marcadores establecidos en el documento.
Project
- Analyze the Grammar
La aplicación verifica la sintaxis de la gramática y prepara la aplicación para generar las tablas de análisis. Si se encuentra algún error, éste es reportado al usuario y el proceso se reinicia.
- Create LALR Parse Tables
La aplicación trata de construir las tablas del análisis sintáctico LALR. La mayoría de los conflictos ocurren durante la creación de estas tablas, por lo cual son construidas antes.
- Create DFA Lexer Tables
La aplicación trata de crear las tablas del automata finito determinístico usando el generador de tokens (scanner).
- Save the Tables
Permite almacenar las tablas de la gramática compilada en un archivo (.cgt).
- Create a Skeleton Program…
Permite seleccionar un lenguaje como salida para usar la gramática. En la imagen está seleccionada la opción para C#, usando el generador Calitha, que genera un archivo “.cs” con todos los símbolos y producciones de la gramática listo para ser importado en un proyecto de este lenguaje de programación.
- Reset
Reinicia el proceso de compilación de la gramática para poder analizarla nuevamente.
1. Create a Web Page…
Permite crear una página web conteniendo los resultados del análisis sintáctico realizado por la aplicación.
- Export the Tables
- Formatted Text Permite guardar los resultados del análisis sintáctico como texto formateado.
- XML Permite guardar los resultados del análisis sintáctico como un archivo XML.
- YACC/Bison Grammar Permite guardar la gramática con la sintaxis de YACC/Bison.
- Save the Log
Permite guardar el registro de las acciones realizadas por la aplicación durante el análisis.
- Options
Permite establecer opciones de la aplicación como notificaciones, codificación de caracteres y estilos del editor de gramáticas.
Test
- Multiple File Test Wizard…
Permite realizar pruebas a la gramática a través de un asistente con el contenido de varios archivos.
- Open a Test File
Abre un archivo para probar la gramática.
- Save the Test File
Permite guardar el texto de prueba de la gramática en un archivo.
- Save the Test File As…
Permite guardar el texto de prueba de la gramática en un archivo con un nombre específico.
- Step
Realiza un paso a la vez en el análisis del texto de prueba de la gramática.
- Parse All
Realiza todo el análisis del texto de prueba de la gramática.
- Pause
Pausa el análisis realizado del texto de prueba de la gramática.
- Stop
Detiene el análisis realizado del texto de prueba de la gramática.
- Test Options
Permite establecer opciones durante la prueba del texto.
10. Trim Reductions
Determina si se muestran en el registro de las acciones todas las reducciones realizadas durante el análisis sintáctico o sólo las más importantes.
11. Export the Parse Tree
Permite guardar el árbol de análisis sintáctico como un archivo de texto.
Window
1. Grammar
Muestra el editor de la gramática.
2. Parameters
Muestra todos los atributos que fueron establecidos en la gramática. Entre estos están el nombre de la gramática, versión, autor y si el lenguaje es sensible a mayúsculas.
3. Character Sets
Muestra los conjuntos de caracteres definidos en la gramática. Esta información es usada en la construcción del autómata finito determinístico, pero no es almacenada en el archivo de las tablas de la gramática compilada (.cgt).
4. Symbols
Muestra los símbolos de la gramática y las palabras reservadas. Todos los símbolos son automáticamente ordenados por su tipo, terminal o no terminal, y luego por su nombre respectivo.
5. Productions
Muestra todas las producciones usadas en la gramática. Aquí se pueden revisar las producciones para determinar si hay algún error en la gramática que no había sido aparente. Tambien permite verificar que el analizador léxico de la gramática funciona correctamente.
6. DFA States
Un autómata finito determinístico es usado por el generador de tokens para leer la cadena fuente y dividirla en tokens individuales. Cuando la gramática es analizada, los conflictos pueden ocurrir cuando dos o más terminales aceptan el mismo texto.
a. Controles
El navegador de los estados del automáta funciona como cualquier navegador web de internet. Si se hace doble clic en cualquier enlace “Goto”, la ventana automáticamente avanzará hacia ese estado. En la parte baja de la ventana, hay unos controles que permiten saltar a cualquier estado en la tabla o regresar al último estado examinado.
7. LALR States
La mayoría de los errores que ocurren en las gramáticas son encontrados en la tabla de los estados LALR. Cuando se analiza una gramática y se generan las tablas de análisis sintáctico, a menudo ocurren los conflictos desplazamiento-reducción y reducción-reducción. Estos conflictos son causados por ambigüedades en la gramática que no son obvias al usuario.
La tabla de los estados LALR permite revisar los estados producidos, en particular el estado que contiene el error.
La tabla de los estados LALR permite revisar los estados producidos, en particular el estado que contiene el error.
El navegador de los estados LALR consiste de tres diferentes pestañas que contienen información acerca el estado actual. La pestaña de Configuraciones muestra el conjunto de configuraciones que el estado representa. Cada estado LALR representa un estado particular durante el análisis sintáctico. Las producciones que son analizadas son llamadas “configuraciones” con un cursor (representando el análisis) representado por un punto (.).
Cada configuración tiene un conjunto de caracteres siguientes que contienen los posibles terminales que pueden seguirle. Esta información es usada para crear las acciones en el estado actual.
La tercera pestaña contiene los estados “previos”. Cada uno de estos estados avanzará al estado actual a través de un desplazamiento o un goto (ir a). Esta pestaña permite moverse hacia atrás en el estado actual.
a. Controles
El navegador de los estados LALR funciona como cualquier navegador web de internet. Si se hace doble clic en cualquier enlace “Shift” o “Goto”, la ventana automáticamente avanzará hacia ese estado. Al final de la ventana, hay unos controles que permiten saltar a cualquier estado en la tabla o regresar al último estado examinado.
8. Log
Muestra una ventana con diversa información obtenida del análisis. Ésta incluye información general sobre el número de símbolos, cuáles fueron definidos implícitamente, total de tablas y cualquier error que pueda ocurrir.
9. Test Grammar
Después de que una gramática ha sido éxitosamente compilada por la aplicación, se puede verificar como el autómata finito determinístico y los algoritmos LALR analizarán cualquier número de casos de prueba.
La ventana tiene dos distintas pestañas. La primera pestaña permite escribir o cargar un texto de prueba. Los controles de la ventana son similares a los de un reproductor de música.
Para empezar la prueba, se hace clic en el botón “Step” (verde). En este punto, se puede hacer clic en el botón de nuevo para analizar el texto y pausar el proceso cada vez que un token es leído. Esto permite ver cómo el texto es interpretado por la gramática paso a paso. El botón “Parse All” analizará el resto del texto sin detenerse hasta que ocurra un error o el texto sea aceptado. El botón “Stop” puede usarse en cualquier momento para terminar la prueba.
La primera pestaña contiene una lista de las acciones realizadas por el analizador sintáctico LALR.
Si el texto de prueba es éxitosamente analizado, la aplicación dibujará un árbol de análisis sintáctico que es posible revisar.
10. Predefined Set Table
Muestra una ventana con el conjunto de caracteres predefinidos por la aplicación.
11. Cascade Windows
Organiza todas las ventanas actualmente abiertas en forma de cascada.
Help
- GOLD Documentation…
Abre la página en internet con la documentación de GOLD Parser.
- GOLD Homepage…
Abre la página principal del sitio oficial de GOLD Parser.
- Check for Updates…
Determina si hay nuevas versiones de la aplicación.
- Known Issues with this Release…
Abre la página que contiene los inconvenientes actuales con la versión de la aplicación.
- Miscellaneous Links…
Muestra un listado de sitios relacionados con la apliación.
- Revision History…
Muestra el listado de cambios realizados entre cada versión.
- About GOLD Parser Builder…
Muestra la información de la aplicación.