[antlr-interest] ANTLRWorks 2 (for ANTLR v4)

The Researcher researcher0x00 at gmail.com
Thu Sep 1 13:06:36 PDT 2011


>
> All,
>

First let me say that having started with ANLTR at 2.x using the command
line then seeing ANTLRWorks was a WOW!. Nice job and great stake in the
ground.

While I am somewhere in between the things that I think would benefit the
next version would be

1. More documentation. It took me some time to figure out how to use a few
parts of ANTLRWorks 1.x because of the thin documentation. There was enough
there, but sometimes  you need to see things done in two different ways to
get it.

2. Flow of use. The use of a GUI should flow from top to bottom, and left to
right.
    At first use of the interpreter it took me a while to figure out that
the arrow on the left of the rule selection was to be used after the
rule was selected.

3. I think of the interpreter and debugger as modes. Modes don't belong on
tabs.

4. Integration back into the Tool. I have been spending some time with the
options for the Tool and have come to learn just how much the Tool carries a
good portion of the behind the scenes load for ANTLRWorks, while ANTLRWorks
focuses on the user interaction and presentation. For those people writing
IDEs for other environments, being able to leverage the same processes from
the Tool would a benefit.

5. The ability for the interpreter to work with actions. I know this is
actually something that has to be done in the Tool, but if the concept has
been silently moving forward, is it ready for a prime time debut? That
wouldn't be a version change, that would be a magnitude change.

6. For the new users, the documentation should point out that the
interpreter is more for basic learning or working on problem parts of
grammars that can be simplified enough to be handled by the interpreter.
Also that ANTLRWorks can not do analysis of string templates, STViz will do
that.

7. This one might be just me, but I'll mention it. Having started with the
command line I tended to look at the generated code and diffs of the
code every time I used a new feature of the ANTLR syntax. By doing so I
learned more about ANTLR than anything else at the time. It would be nice if
ANTLRWorks could the ability to display two versions of a grammar and diff
not only the code but show the different diagrams.

8. On my Debian systems I added ANTLRWorks to the GNOME menu, but sadly to
say have no icons to display next to the name. Icons for ANTLRWorks would be
nice. As an example Eclipse comes with eclipse.png,eclipse32.png, and
eclipse48.png


9. Preferences can only be set once a grammar is open. Preferences should be
able to be set regardless of having a grammar open.

10. Getting the debug port to work can be a major problem. While I use
tcpdump to look at the packets, for debugging the debug port could there be
a raw packets received screen, or something else.

11. For the debugger when setting Break On ALL, shouldn't all of the other
break points be checked.

12. Messages instead of system that just spins. Currently with 3.4 installed
if I use the menu Grammar -> Show Tokens DFA, it just shows the dialog with
"Operations in progress" and spins. I believe this is due to the fact that
the -dfa option is not working for 3.4. While I haven't ventured into the
code, my guess is that this would require putting a timer on all back end
calls to the Tool.

13. For a new user seeing screens shots showing  a positive result to an
action such as using the menu or clicking start, and also some of the common
errors would help them figure out if they did something right on wrong.

14. When debugging a problem area in a grammar and wanting to bring the
interpreter down on it, the actions have to be stripped. The Tool -print
option is great for this. Could ANTLRWorks make use of the -print option.
Yes I know not all grammars can be stripped of actions and still be valid,
but with a little tinkering after that to get a valid grammar is better than
doing it by hand and less error prone.

I know I haven't hit a lot on new diagrams or analysis functionality, that
is because I use the Tool and it's options for most of that from the command
line,and have created my own utilities for the specific pretty prints.

Just to reiterate, ANTLRWorks has made a positive and significant impact to
both ANTLR and many people learning parsing. We are much better for it.

Eric


More information about the antlr-interest mailing list