El analisis para la traduccion a JavaScript se ha generado utilizando la herrmaienta de Jison de la cual fue sacada la traduccion, analisis lexico,sintactico,y reporte de tokens encontrados
Para la traduccion a python, en el analisis previo de Java se ha ha realizado un traductor hecho sin herramientas para el cual se ha utilizdo el siguiente automata:
para la construccion de las apis las cuales son los que nos devuelven la informacion de cada traduccion para ser mostrada en la pagina principal hara uos de la herrmaienta Node Js para la cual se ha requerido los modulos de:
- Express
- Cors
- Morgan
Las apis estaran sirviendo en los puertos 3000 para JS,3500 para python
En la pagina web ha sido construida con las herramientas de html,css y js
para la creacion de la los servicios y consumo de las api's de la pagina principal se utilizo el lenguaje de programacion GO en el cual se estar levantando el servicio en el puerto 4000 para ofrecer el recurso estatico de la construccion de la pagina hacia el usuario
La aplicacion es una herramienta en la cual proporcionara al usuario la posibilidad de hacer la traduccion de un archivo escrito en Java a Javascript y Python con la posibilidad de ver un listado los tokens, errores lexicos, errores sintacticos y la grafica de un arbol ast
En el area de trabajo la aplicacion presentara un menu interactivo en el cual se desplegaran varias utilidades que podemos aplicar sobre los editores.
Para la ediccion principal se mostrar un area de texto en el cual se podra caragar el archivo fuente el cual se desea analizar, esto teniedo en cuenta que podremos tener varias archivos abiertos al mismo tiempo, Aparte de ellos tendremos un apartado con otras dos areas de texto donde se mostarar la traduccion del archivo fuente.
en la caraga de un archivo se ha colocado la opcion en el apartado de Menu en el cual podra cargar el archivo fuente que se analizar y colocandolo en el aparto o pestaña que se ha selecionado con anterioridad, en la cual tenra una implementacion para el pintado de palabras utilizando la erramienta CodeMirror
Para el analisis de los archivos fuentes cargados en la pagina se utilizara las opciones de un pequeño sub-menu colocado arrbia de las pestañas en el cual se debera de selecionar la pestaña que se quiere analizar y luego de dar analizar se cargar las traducciones a JS y Python en el lado derecho.
Los reportes que se proporcionar la pagina son:
- Reporte de Tokens Reconocidos
- Reporte de Errores Lexicos y Sintacticos
- Reporte Grafico del arbol AST
Para los reportes de los tokes generados y los errores lexico-sintacticos (si existieran) se desplegara una tabla en el cual se mostraran dichos tokens coon una breve descripcion de ellos
Para la presentacion del arbol AST de igual maneera se mostar en una ventaa diferente para la cual se ha utilizado la herramienta D3 de Graphviz la cual proporcinara al usuario una mejor navegacion entre los nodos que se pudieran produccir del archivo fuente analizado