Skip to content

JavaCC 21 #1038

@revusky

Description

@revusky

Since you guys are heavy users of that legacy dinosaur JavaCC project, I thought you might find an update on the work going on in the space to be useful. Or interesting, at least. I'm referring to JavaCC 21 which is my second run at reviving JavaCC. The first attempt was back in 2008 and I decided, after dropping it for a decade to pick it up again. Anybody interested can read the whole history of that here.

There are a lot of things to tell you about but this may be the biggest one:

You know, there's this very longstanding bug in JavaCC that nested lookahead does not work properly. That is basically a showstopper in terms of any very sophisticated use of the tool. You can't use LOOKAHEAD recursively. It's right there in their FAQ.

Anyway, on my last iteration of refactoring and cleaning up the code, I realized that nailing that bug was now low-hanging fruit. So I fixed it.

I hope that piques people's interest. There are a bunch of other quite nifty improvements that came on line in the last few months. For example, this new up-to-here marker construct or this new feature I call Lookbehind.

Well, that's enough said for now. Pardon the shameless plug, but you have to understand that this project is at a severe disadvantage visibility-wise so there is really little choice. Besides, somebody should break it to you guys that you are using something that is totally obsolete!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions