I hacked some code to automatically generate LL(1) parse tables. You can grab a copy of the source code here. It's written in C++. The code is pretty rotten (it should be totally rewritten) but it compiles and runs and works, so it may be useful to help you study if you want to do a sanity-check of hand-calculated FIRST, FOLLOW, and PREDICT sets, etc.

If you look at main() near the bottom, you can see well enough how to specify a grammar for it to calculate. The limitations are that non-terminals must be capital letters (excluding Z, which I use as an artifical start symbol to match '$' at the end) and the terminals must be lowercase letters. If you've questions, let me know.

Brian


Last updated on Mon Sep 27 17:01:40 EDT 1999 by Brian McNamara