Skip to content

mariogarzac/moolang

Repository files navigation

Compilers

Avance 1 16/04/23

Para esta etapa logré hacer los diagramas del lenguaje de programación llamado 'moo'. Con los diagramas hechos empecé a crear el lexer y las reglas, sin embargo, el parser todavía falta ser terminado.

Avance 2 22/04/23

En esta etapa logré completar mi parser y lexer sin que hubieran conflictos de shift/reduce o reduce/reduce y también cree el cubo semántico. Este falta ser revisado para saber si funciona correctamente. Desafortunadamente no he podido progresar en en la semántica de variables, pues me atrasé un poco.

Avance 3 30/04/23

En este avance hice distintas cosas que tenía pendientes y unas que son más nuevas. Primeramente hice el directorio de funciones y funciona por la mayor parte, solo falta corregir que no borre variables, sino que las guarde. Además de eso cambié el cubo semnántico a números en vez de strings. El avance de la generación de expresiones está fluyendo bien, sin embargo he estado teniendo problemas guardando las variables en orden. Confio que esta semana será resuelto lo que queda pendiente y lo que sigue por entregarse.

Avance 4 07/05/23

En este avance logré hacer buen progreso sobre mi compilador, ya que pude generar expresiones con paréntesis y guardarlas en la variable. Las funciones especiales también están por ser completadas. Por el momento me falta validar que la variable en la que se guarda exista la información, poder asignar un valor a una variable de un arreglo y lo que correspondía para esta semana, ciclos y condiciones. Espero para la siguiente entrega finalmente ponerme al corriente.

Avance 5 14/05/23

En este avance terminé cuádruplos que tenía pendientes, tales como los de mis funciones especiales. Además logré generar los cuádruplos para el if y el ciclo while. El ciclo for todavía requiere trabajo y las funciones no logré empezarlas.

Avance 6 21/05/23

Para este avance terminé cuádruplos que tenía pendientes y el cuádruplo para el ciclo for. Inicié las funciones, sin embargo no están completas todavía. Para el caso de la memoria virtual, solo lo tengo en concepto, pero falta la implementación.

Avance 7 29/05/23

Para este avance arregle problemas con los ciclos y las funciones. Además logré cambiar exitósamente todo a su dirección de memoria virtual. La máquina virtual aún no se ha comenzado, sin embargo ya se tiene planificado como será en ejecución.

Avance 8 3/06/23

Para este avance tuve mucho progreso. Logré hacer que la máquina virtual funcionara para funciones no recursivas, ciclos y ciclos andidados al igual que condicionales. También logré hacer que mis funciones especiales funcionaran en ejecución. He realizado pruebas con los algoritmos de fibonacci y factorial y las pruebas han sido exitosas de manera iterativa. La documentación está a la mitad en la entrega de este avance.

About

Compilador de Mario

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published