Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
T TLENG-solver
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 4
    • Issues 4
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Metrics
    • Incidents
    • Environments
  • Packages & Registries
    • Packages & Registries
    • Package Registry
  • Analytics
    • Analytics
    • CI/CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Nicolas Pironio
  • TLENG-solver
  • Merge requests
  • !1

Merged
Created Aug 13, 2022 by Manuel Panichelli@mpanichelliDeveloper

gramatica: Refactor parseo y tests

  • Overview 5
  • Commits 1
  • Changes 12

Refactorizo el parseo de gramáticas para que sea igual al de Grammophone. Esto a futuro nos va a permitir tener símbolos con más de un caracter, pero por la implementación actual no podemos. Se agregan tests para el parseo que chequean que todas las gramáticas que estaban en el directorio de ejemplos se parseen correctamente, y se actualiza su formato.

Revisé y los ejemplos de gramáticas siguen funcionando igual.

Este nuevo formato tiene varias ventajas,

  • En el 99% de los casos no vamos a querer tener símbolos que no aparezcan en las producciones, entonces va a ser más cómodo que se infieran a partir de ellas.
  • Soporte para comentarios.
  • El formato en el que se especifican las producciones es más legible a primera vista sin conocer el formato de antemano.
  • Permite agrupar producciones con la misma cabeza.
  • Es práctico poder copiar y pegar a grammophone sin cambiar nada.
Edited Aug 13, 2022 by Manuel Panichelli
Assignee
Assign to
Reviewer
Request review from
None
Milestone
None
Assign milestone
Time tracking
Source branch: grammar-parsing