k-john-gough / gppg

GPPG is a parser generator that produces parsers written in the C# V2 or higher. The input language is YACC-like, and the parsers are LALR(1), with the usual automatic disambiguations. Designed to work with GPLEX.
Other
37 stars 23 forks source link

Activity level/support for this project? #5

Open asfarley opened 2 years ago

asfarley commented 2 years ago

Hi,

I'm doing a review of the available parser-generators for C# and GPPG/GPLEX came up.

Is anyone actively using this project? It looks suitable for my needs although I don't see a ton of activity. Is that just because the code is stable?

@k-john-gough Would you recommend this project as the basis for development of a compiler used in production?

Molinarius commented 2 years ago

Is anyone actively using this project?

Me, and so far, I really liked using it. The generated code works perfectly with the current .NET 6.

However, I asked myself whether I should use it for new developments for the same reason you mentioned. I know that open source includes contributing, but I don't think I'd be able to handle this project.

k-john-gough commented 2 years ago

Hi Folks This is John Gough. I wrote GPLEX and have maintained GPPG since its prototype version. I am now fully retired and am no longer actively maintaining these and my other github projects - unless there are breaking changes in the .NET platform. The code for these two projects is stable, although making use of some of the features in the latest versions of C# could marginally improve the runtime performance. I believe that the generators are still eminently useable for compiler projects. In particular, those who do a deep dive into GPLEX will find that the many tool-runtime options allow space/speed trade-offs for atypical cases such as very large, sparse alphabets. Ideally, I would like someone who is about 60 years younger than me to put their hand up to maintain these tools in the future.

asfarley commented 2 years ago

@k-john-gough Thank you very much for the details. I will continue evaluating GPPG/GPLEX for our purpose.

WarlockD commented 1 year ago

This comes a little late but yea this is a great project. I am sure somone as created an updated updated buffers? I hate to reinvent the wheel..again:P (Spent part of a week converting old yacc code before I thought to check github)

Molinarius commented 1 year ago

I had to create a new parser. Because of the situation described in this issue, I first had a look at the parser generator named like an insect. It didn't take me long to get back to GPPG and GPLEX, and despite some it-would-be-great-if-this-used-modern-features-moments it was a real pleasure working with them.

I think it would be really really sad if this great project wasn't maintained any more.

@k-john-gough You don't happen to know a young colleague from your university who wants to take care of this project?