Hallo all, I would like to show you a parser generator I wrote:
<https://github.com/choltreppe/parlexgen> Short summary why I wrote it: I have some projects where I need to parse things, and I was using the std/pegs module for that, but I was not realy happy with that solution. So I searched for other modules and found the nimly module, which is a way better solution, but the long compilation time anoyed me and I didn't like that the generated proc is exported automatically (dont get this wrong I dont want to hate on that package or anything, I realy like it otherwise, I actually copied the syntax for the parser definition with some tweaks). so I decided to give writing my own one a go, with the focus on making it compile fast. Another thing I tried to improve is the compilation error messages (presenting the user meaningful errors that point to their code not my macro code). And I also integrated a system that lets the user define handling of parsing errors as easy as possible. I already replaced the parser in one of my projects with it and it works well. It compiles in a few seconds and the error handling system works nice for me.