Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Plans to support Earley parsing? #25

Open
robertfeldt opened this issue Oct 19, 2021 · 2 comments
Open

Plans to support Earley parsing? #25

robertfeldt opened this issue Oct 19, 2021 · 2 comments

Comments

@robertfeldt
Copy link

Thanks for Lerche.jl, it looks great.

The Python Lark supports also Earley(SPPF) parsing. Any plans to implement this also for Lerche.jl?

@jamesrhester
Copy link
Owner

No concrete plans but every request for adding it encourages me to do it - of course pull requests also welcome. Anybody else who would like Earley parsing feel free to add a comment or reaction emoji to this issue, I'll leave it open.

@robertfeldt
Copy link
Author

Thanks for at least considering it.

I think it will be really useful for more advanced and research projects where keeping the ambiguity around for later processing is important. Personally, I'm looking into some new automated testing ideas which would benefit from Earley parsing, i.e. keeping the ambiguity points to different type of testing scenarios that might need to be explored.

Also given Julia's excellent performance I think an Earley implementation might have relatively even larger performance gains relative to Python and other implementations so could be a real selling point.

But I fully understand, that open-source projects have limited time and resources to put it; just wanted to state my arguments. :) I have some experience with Earley parsing and might try doing a PR at some point but knowing my schedule I'll not promise very/too much. ;)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants