Manual de Usuario
Presentación de la aplicación
JIRA Simulator fue creado con la intención de brindar un aporte más al aprendizaje en el área de Lenguajes Formales y la Teoría de Compiladores, en este caso, específicamente se desarrollan los conceptos de Analizador Sintáctico y Árboles de Derivación, se verá desde la creación de Conjuntos Primero y Siguiente, una vez analizada la gramática que el usuario ingrese, pasando por la creación de tablas LL o LR, hasta la formación de los árboles de derivación de las palabras o cadenas de entrada.
Además, con este simulador se busca ofrecer una ayuda a los interesados en este campo, quienes deseen aprender un poco más o incluso facilitar el largo proceso que implica la realización de analizadores sintácticos y árboles de derivación, a aquellos que estén desarrollando otras aplicaciones donde se necesite contar con herramientas de ayuda como ésta.
DESARROLLO DE UN ENTORNO DE SIMULACIÓN PARA ARBOLES DE DERIVACIÓN DE GRAMÁTICAS REGULARES
Manual de Usuario
JIRA SIMULATOR
UNSAAC | INGENIERÍA INFORMÁTICA Y DE SISTEMAS
2
Objetivo de este manual
El único y primordial objetivo de este manual es servir de guía y apoyo al usuario para utilizar el software de simulación JIRA Simulator, brindando la información necesaria para poder despejar todas las dudas existentes, mediante una descripción detallada e ilustrada de las opciones.
DESARROLLO DE UN ENTORNO DE SIMULACIÓN PARA ARBOLES DE DERIVACIÓN DE GRAMÁTICAS REGULARES
Manual de Usuario
JIRA SIMULATOR
UNSAAC | INGENIERÍA INFORMÁTICA Y DE SISTEMAS
3
Dirigido a
Este manual está orientado a todos aquellos usuarios con conocimiento (ya sea incipiente o no) en las áreas de Lenguajes Formales y Teoría de Compiladores. Puede ser utilizado por estudiantes y docentes de distintas universidades, incluso para aquellos que simplemente tengan deseos de ser autodidactas y quieran entender el funcionamiento de un Analizador Sintáctico y de los Árboles de Derivación.
DESARROLLO DE UN ENTORNO DE SIMULACIÓN PARA ARBOLES DE DERIVACIÓN DE GRAMÁTICAS REGULARES
Manual de Usuario
JIRA SIMULATOR
UNSAAC | INGENIERÍA INFORMÁTICA Y DE SISTEMAS
4
Lo que debe conocer
El usuario que haga uso de JIRA Simulator debe tener conocimiento, no necesariamente experto, pero sí el suficiente para entender el proceso que implica desarrollar un Analizador Sintáctico, cómo se obtiene el conjunto Primero y el conjunto Siguiente, cómo se elaboran tablas LL(k) y LR(k) a partir del paso anterior, y finalmente graficar el árbol de derivación de una palabra o cadena de la gramática correspondiente.
DESARROLLO DE UN ENTORNO DE SIMULACIÓN PARA ARBOLES DE DERIVACIÓN DE GRAMÁTICAS REGULARES
Manual de Usuario
JIRA SIMULATOR
UNSAAC | INGENIERÍA INFORMÁTICA Y DE SISTEMAS
5
¿Cómo utilizar JIRA Simulator?
Paso 1: Ejecutar el archivo JIRA Simulator
Paso 2: Elegir entre una de las opciones: LL(1) Parser, LL(2) Parser, LR(1) Parser, haciendo clic sobre la opción deseada.
Luego de seleccionar una opción se abrirá una nueva ventana. Así:
DESARROLLO DE UN ENTORNO DE SIMULACIÓN PARA ARBOLES DE DERIVACIÓN DE GRAMÁTICAS REGULARES
Manual de Usuario
JIRA SIMULATOR
UNSAAC | INGENIERÍA INFORMÁTICA Y DE SISTEMAS
6
Paso 3: En esta nueva ventana, el usuario puede elegir ingresar una nueva gramática (de preferencia mantener la letra S), o puede abrir uno de los archivos de ejemplo que viene agregado al simulador.
Estos ejemplos pueden encontrarse en la siguiente ruta:
D:\JIRA Simulator v1.0\src\examples
Para lo cual, desde la ventana, acceder a:
File Open y buscar los ejemplos en dicha ruta.
O bien, utilizando el teclado, con las teclas Ctrl + /
Gráficamente:
DESARROLLO DE UN ENTORNO DE SIMULACIÓN PARA ARBOLES DE DERIVACIÓN DE GRAMÁTICAS REGULARES
Manual de Usuario
JIRA SIMULATOR
UNSAAC | INGENIERÍA INFORMÁTICA Y DE SISTEMAS
7
Lo cual abrirá la siguiente ventana y se seleccionará el archivo ejemplo.
DESARROLLO DE UN ENTORNO DE SIMULACIÓN PARA ARBOLES DE DERIVACIÓN DE GRAMÁTICAS REGULARES
Manual de Usuario
JIRA SIMULATOR
UNSAAC | INGENIERÍA INFORMÁTICA Y DE SISTEMAS
8
Se abre el archivo ejemplo deseado e inmediatamente un ejemplo de gramática aparecerá en la ventana anterior. De esta manera:
DESARROLLO DE UN ENTORNO DE SIMULACIÓN PARA ARBOLES DE DERIVACIÓN DE GRAMÁTICAS REGULARES
Manual de Usuario
JIRA SIMULATOR
UNSAAC | INGENIERÍA INFORMÁTICA Y DE SISTEMAS
9
Paso 4: Clic en el botón Done, para acceder a la siguiente ventana First Sets, donde se obtendrá el Conjunto Primero.
Paso 5: Para calcular el conjunto Primero, clic en el botón Show, la tabla se llenará como en el siguiente gráfico:
DESARROLLO DE UN ENTORNO DE SIMULACIÓN PARA ARBOLES DE DERIVACIÓN DE GRAMÁTICAS REGULARES
Manual de Usuario
JIRA SIMULATOR
UNSAAC | INGENIERÍA INFORMÁTICA Y DE SISTEMAS
10
Paso 6: Clic en Done y se mostrará una nueva ventana Follow Sets (Conjuntos Siguiente).
Paso 7: Al igual que en el paso 5, clic en el botón Show y la tabla se llenará, quedando así:
DESARROLLO DE UN ENTORNO DE SIMULACIÓN PARA ARBOLES DE DERIVACIÓN DE GRAMÁTICAS REGULARES
Manual de Usuario
JIRA SIMULATOR
UNSAAC | INGENIERÍA INFORMÁTICA Y DE SISTEMAS
11
Paso 8: Nuevamente clic en Done y aparecerá una nueva ventana con la tabla LL o LR creada.
Paso 9: Como en los pasos 5 y 7, hacer clic en Show y se creará automáticamente la tabla. Así:
DESARROLLO DE UN ENTORNO DE SIMULACIÓN PARA ARBOLES DE DERIVACIÓN DE GRAMÁTICAS REGULARES
Manual de Usuario
JIRA SIMULATOR
UNSAAC | INGENIERÍA INFORMÁTICA Y DE SISTEMAS
12
Paso 10: Clic en Done y ahora se muestra una pantalla más compleja.
DESARROLLO DE UN ENTORNO DE SIMULACIÓN PARA ARBOLES DE DERIVACIÓN DE GRAMÁTICAS REGULARES
Manual de Usuario
JIRA SIMULATOR
UNSAAC | INGENIERÍA INFORMÁTICA Y DE SISTEMAS
13
Paso 11: Ahora que se ha mostrado la última interfaz, se puede ingresar una palabra o cadena que cumpla con las producciones de la gramática ingresada o seleccionada al principio. Luego elegir si se quiere ver el árbol de derivación o solo la derivación de la palabra ingresada.
DESARROLLO DE UN ENTORNO DE SIMULACIÓN PARA ARBOLES DE DERIVACIÓN DE GRAMÁTICAS REGULARES
Manual de Usuario
JIRA SIMULATOR
UNSAAC | INGENIERÍA INFORMÁTICA Y DE SISTEMAS
14
Paso 12: Hacer clic en el botón Start para comenzar con el proceso.
DESARROLLO DE UN ENTORNO DE SIMULACIÓN PARA ARBOLES DE DERIVACIÓN DE GRAMÁTICAS REGULARES
Manual de Usuario
JIRA SIMULATOR
UNSAAC | INGENIERÍA INFORMÁTICA Y DE SISTEMAS
15
Fijarse que una vez iniciado el procedimiento, se muestra un mensaje en la parte inferior de la ventana y se habilita el botón Step, el cual permitirá esbozar el diagrama adecuado (por elección del usuario), paso a paso, caracter por caracter, hasta llegar al final de la palabra; por lo tanto el siguiente paso es obvio, simplemente hacer clic’s consecutivos en dicho botón, hasta que aparezca un mensaje en la parte inferior de la ventana indicando la culminación de la simulación. Así:
1° Step:
DESARROLLO DE UN ENTORNO DE SIMULACIÓN PARA ARBOLES DE DERIVACIÓN DE GRAMÁTICAS REGULARES
Manual de Usuario
JIRA SIMULATOR
UNSAAC | INGENIERÍA INFORMÁTICA Y DE SISTEMAS
16
3°Step:
Y así sucesivamente hasta terminar todo el proceso.
DESARROLLO DE UN ENTORNO DE SIMULACIÓN PARA ARBOLES DE DERIVACIÓN DE GRAMÁTICAS REGULARES
Manual de Usuario
JIRA SIMULATOR
UNSAAC | INGENIERÍA INFORMÁTICA Y DE SISTEMAS
17
DESARROLLO DE UN ENTORNO DE SIMULACIÓN PARA ARBOLES DE DERIVACIÓN DE GRAMÁTICAS REGULARES
Manual de Usuario
JIRA SIMULATOR
UNSAAC | INGENIERÍA INFORMÁTICA Y DE SISTEMAS
18
Obsérvese que a lo largo de este proceso, se muestran mensajes en la parte inferior de la ventana, indicando lo que se hace en cada paso.
DESARROLLO DE UN ENTORNO DE SIMULACIÓN PARA ARBOLES DE DERIVACIÓN DE GRAMÁTICAS REGULARES
Manual de Usuario
JIRA SIMULATOR
UNSAAC | INGENIERÍA INFORMÁTICA Y DE SISTEMAS
19
NOTA:
• Si solo se quisiera ver la derivación de la cadena, no es necesario reiniciar todo el trabajo desde cero, o haciendo clic nuevamente en Start, basta con cambiar el combo a Derivation of String y se visualizará lo siguiente:
DESARROLLO DE UN ENTORNO DE SIMULACIÓN PARA ARBOLES DE DERIVACIÓN DE GRAMÁTICAS REGULARES
Manual de Usuario
JIRA SIMULATOR
UNSAAC | INGENIERÍA INFORMÁTICA Y DE SISTEMAS
20
• Cabe destacar que a lo largo del proceso, en diferentes ventanas, se muestran botones adicionales, los cuales no afectan el desarrollo de la simulación, sino que poseen otras funcionalidades:
Return: Este botón permite regresar a la ventana donde se ingresa o elige la gramática.
Clear: Limpia las tablas.