|
Hello!
My name is Gustavo and this is my first time writing to this mailing list.
I am writing to announce my project for the GSoC 2020 called Caribay, a PEG (Parsing _expression_ Grammar) parser generator built with LpegLabel, with support of automatic generation of error labels and error recovery rules. The generated parser produces a generic abstract syntax tree or a list of thrown errors. Caribay makes easier to parse lexical symbols, comments, identifiers and keywords using its own syntax.
We developed a parser for the input grammar, a preprocessor for computing FIRST and FOLLOW sets, an algorithm for automatically generating error labels, optional optimizations which can be enabled by the user, and a translator that generates LPegLabel patterns.
A story about the name: Caribay is the daughter of Zuhé (the Sun) and Chía (the Moon) from a legend of the Mirripuyes (an indigenous group from Mérida, Venezuela). Since Lua means Moon in Portuguese, the tool being the daughter of Lua sounded nice to me. Also, the legend involves the origin of five famous peaks from Mérida, so the name is related to "generating" things.
The Code
Caribay can be installed using Luarocks. The source code has been published on Github.Who I am
I am a student of computer engineering at Universidad Simón Bolívar, Venezuela. I am interested in programming languages and learning new software engineering and computer science concepts.
Mentors
Sérgio Medeiros