[antlr-interest] hello, antlr on Ubuntu
Dan Kegel
dank at kegel.com
Thu Dec 17 03:49:52 PST 2009
I was trying to do the commandline example from
http://www.antlr.org/wiki/display/ANTLR3/Expression+evaluator
and noticed it's slightly out of date; the line
HashMap memory = new HashMap();
needs to read
HashMap<String,Integer> memory = new HashMap<String,Integer>();
for recent java, else you get the error
ExprParser.java:163: warning: [unchecked] unchecked call to put(K,V)
as a member of the raw type java.util.HashMap
memory.put(ID2.getText(), new Integer(expr3));
^
Also, the user has to figure out the classpath himself (though I guess
that's normal for java development).
For reference, here are the complete list of steps needed to try out
that example on Ubuntu Jaunty:
Copy and paste the grammar and test program from
http://www.antlr.org/wiki/display/ANTLR3/Expression+evaluator
into Expr.g and Test.java, and modify Expr.g as described above
$ sudo apt-get install antlr3 openjdk-6-jdk
$ antlr3 Expr.g
$ javac -cp .:/usr/share/java/antlr3-3.0.1+dfsg.jar Test.java
ExprLexer.java ExprParser.java
$ java -cp .:/usr/share/java/antlr3-3.0.1+dfsg.jar Test
Works like a charm.
More information about the antlr-interest
mailing list