Hans Fugal wrote: > In which way? They take ascii art as input? I had no trouble with the > syntax diagrams in 431, but I found them hard to work with. I couldn't > send one by email easily. I had to have a PDF viewer and scan through > dozens of pages of diagrams (we know how much fun that can be) or lug > the large book (which I printed out at Kinkos) around. I decided to > write my own parser generator, and so I had to enter all those diagrams > into BNF format (which seemed like a reasonable machine-readable > choice), and while tedious I don't remember it being difficult. In fact, > I seem to remember very quickly finding a few patterns, and converting > to BNF was primarily a rote exercise.
Good point. I presume from a casual googling that ANTLR must have some notation that allows one to easily define a syntax diagram using some notation. I would guess (and that's all it is) that the syntax would be similar to how PyParsing defines a grammar. Easy ways to say "one or more" or "zero or more," for example. Given that format it is just as clear and easy to run through a parser generator as BNF. I am curious about your easy rote exercise to create BNF from a syntax diagram. How do you do it? How do you properly convert an iterative diagram into the recursive productions that BNF requires? It's not always correct to convert an iterative production into right-recursive format, yet left-recursive is problematic. How do you deal with this? Michael /* PLUG: http://plug.org, #utah on irc.freenode.net Unsubscribe: http://plug.org/mailman/options/plug Don't fear the penguin. */
