github antlr/antlr4 4.5.1

latest releases: 4.13.1, 4.13.0, 4.12.0...
8 years ago

Bug fix and repo reorganization release

We fixed number of important bugs but also combined the various target repositories, such as antlr/antlr4-python2, into the main antlr/antlr4 repository.

For the Java target only, there is also a new feature: a parser interpreter that tracks which alternative or label was match for a particular parse tree node, which is often useful during debugging. It is used in the 1.7 release of the ANTLR Intellij Plugin.

Summary of Major Changes

  • Maven build was added back in, thanks to new contributor Jason van Zyl; you can just open the topmost pom.xml in your favorite IDE
  • We completely overhauled runtime test generation
  • We merged all existing target repositories such as antlr4-python2 into the main antlr4 repo so that everything is now included in a single spot.
  • We removed runtime jar dependency on Swing. Class org.antlr.v4.runtime.misc.TestRig has moved to org.antlr.v4.gui.TestRig but we left a proxy in so that org.antlr.v4.runtime.misc.TestRig still works. The org.antlr.v4.runtime.tree.gui package moved to org.antlr.v4.gui in the tool area from the runtime. A few classes from org.antlr.v4.runtime.misc had to move. Convenience methods for saving/viewing parse trees were moved from RuleContext (parse tree) and org.antlr.v4.runtime.tree.Trees to org.antlr.v4.gui.Trees.

You can view all Issues fixed in 4.5.1, all pull requests merged and all commits for this release.

Features

Bug Fixes

Download Binaries

Download the ANTLR tool and all target runtimes at the antlr.org site.

The Java jars are OSGi compatible so you should be able to use them within Eclipse.

Runtime Libraries for Language Targets

  • Java is embedded with the tool, but is also available from maven-central
  • C# (zipped .dll) is a download from antlr.org. Might be in NuGet too in the future.
  • JavaScript is a download from antlr.org. Might also be registered as a npm package for node.js
  • Python2 and Python 3 are in PyPi
  • Sam Harwell's alternative C# target is available through NuGet. Note that this alternative target is distributed with a standalone copy of the ANTLR Tool, and only works with code generated by that standalone copy.

Documentation

Language Targets Info

As of 4.5, the standard distribution of ANTLR can generate code in the following languages:

In addition, the following languages are supported by standalone release(s) of the tool.

Don't miss a new antlr4 release

NewReleases is sending notifications on new releases.