Re-vamped script parsers

Hi, just a quick note. As of about 15 minutes ago, the latest SNAPSHOT builds have a large body of work merged into them which involves an overhaul of our ANTLR grammar and AST generation for both the Boxlang and CF script grammars.

We weren’t pleased with the parsing speeds we were seeing, so we worked with an ANTLR expert to help us revamp the grammars and our initial testing shows a 5x to 10x speed improvement over the old grammars!

Our bytecode generation is also rounding the corner (behind a feature flag right now) and when it’s done, our overall compilation should be MUCH faster all around.

In theory, the new grammars are exactly identical to the old ones and there are no regressions and you’ll have no idea we made this change, but in reality, there will probably be a few issues that crop up. Our test suite of over 6,500 tests is all passing and my smoke tests with the ColdBox MVC framework are good, but if there’s one thing I know-- edge cases abound :slight_smile:

So if you’re living on the snapshot builds and you see any funkiness, please report it to us! And again, this change is NOT in the beta-10 we cut today. I wanted it to get a bit more testing so we waited to merge it until after releasing beta 10.

5 Likes