Inteprete - Jison (Parte 1)

Поделиться
HTML-код
  • Опубликовано: 11 сен 2024
  • Interprete desarrolado con Jison, Typescritp, Quasar Framework, Vuejs y Lodash, para el primer proyecto del curso Compiladores 2 de la Universidad de San Carlos de Guatemala
    REPOSITORIO: github.com/dmo...

Комментарии • 8

  • @hbmg9844
    @hbmg9844 2 года назад

    Hola, que tal? Quería utilizar tu proyecto pero no puedo instalar todas las dependencias por que me sale error y que están obsoletas! 🥺😟

    • @gt_diego
      @gt_diego  2 года назад

      Te comento que en la parte 2 ( ruclips.net/video/KuniTQZ8c-k/видео.html ) realizo el paso a paso de las instalaciones necesarias para ejecutar el proyecto.
      Si aún asi no te funciona, envíame un screenshot de los errores que te reporta para poder revisarlo a diegomomotic@gmail.com

  • @javierchin3968
    @javierchin3968 3 года назад

    Buenísima onda :')

  • @janerjoseblancomartinez8271
    @janerjoseblancomartinez8271 3 года назад

    Buenas noches, estoy utilizando tu proyecto para la universidad, y realize algunos cambios en la gramática, precisamente en las palabras reservadas del lenguaje, pero al momento de escribirlas en la consola no se resalta como con las variables antiguas, me podrías ayudar? Estoy tratando de encontrar el archivo dónde se modifican los colores pero no lo encuentro. Gracias

    • @gt_diego
      @gt_diego  3 года назад +1

      La implementación de los estilos del editor se hizo en este componente:
      github.com/dmomotic/matriosh-ts/blob/master/src/pages/Index.vue
      Sin embargo, únicamente hice uso de los estilos que ya trae el paquete vue-codemirror. En la línea 89 se encuentra la importación del lenguaje (yo utilicé JavaScript ya que el lenguaje que debía implementar era bastante similar) y en la línea 114 asigno el lenguaje importado al editor.
      Si buscas dentro de la carpeta node_modules la ruta de la importación de la línea 89 te podrás dar cuenta que ya tiene otros lenguajes y posiblemente alguno de ellos pueda servirte. Pero como te comento, la implementación de los colores asignados en el editor no los realicé yo, solo aproveche los que el paquete trae definidos.

  • @Oscar-tg2qk
    @Oscar-tg2qk 2 года назад

    Hola ¿Qué tal? disculpa podrías compartir como lograste graficar la imagen del AST?

    • @gt_diego
      @gt_diego  2 года назад +1

      Te comento.
      1.- Creé el árbol utilizando la gramatica ( github.com/dmomotic/matriosh-ts/blob/master/src/analizador/gramatica_traduccion.jison ), esta estructura la podes implementar como mejor te parezca.
      2.- Utilizando la el nodo raíz de mi árbol utilicé un método recursivo para recorrerlo y generar un string con la sintaxis del lenguaje dot (el que usa graphviz) método generacionDot línea 31 ( github.com/dmomotic/matriosh-ts/blob/master/src/traduccion/traduccion.ts ).
      3.- Utilicé una herramienta llamada viz.js que puede graficar utilizando el metodo renderString línea 44 ( github.com/dmomotic/matriosh-ts/blob/master/src/components/Ast.vue ) y recibe como parámetro el string con la sintaxis dot del paso anterior.
      Los pasos 1 y 2 pueden ser implementados de muchas maneras eso queda a tu discreción, lo importante es que el string generado respete las reglas del lenguaje dot. Te puedo recomendar esta página la cual utilicé para practicar la sintaxis dreampuf.github.io/GraphvizOnline/

    • @Oscar-tg2qk
      @Oscar-tg2qk 2 года назад

      @@gt_diego gracias de verdad por tu ayuda