Tom Copeland's Recent Posts

RSS Feeds

« A nice little RubyForge user interface tweak | Main | A PMD analysis of Azureus and Columba »

A JavaCC grammar for Cobol

While working on my JavaCC book I came across a JavaCC grammar for parsing Cobol programs.  It's a pretty hefty grammar file - over 50 KB - with a ton of productions.  I ran it through JJDoc and you can see that report as well.

I thought a couple of things were interesting:

  • The global lookahead setting is 4, which is a lot more than you usually see. 
  • There are no lexical states (other than DEFAULT, of course). 
  • Whitespace seems to be handled entirely through SPECIAL_TOKEN - no SKIP or MORE.  I think that results in a lot of extra Token creation... but maybe that sort of thing is not a big deal these days.

I tried to contact the author to see if he would mind me putting the grammar on the JavaCC grammars page, but the email bounced.  Bernard Pinon, if you see this, nice work, please drop me a line and let me know if this grammar can live on the JavaCC site :-)

Update 3/30/09: Got an email from Bernard, grammar is here now, and he gave me permission to repost it on the JavaCC example grammars page. Thanks Bernard!

TrackBack

TrackBack URL for this entry:
http://www.typepad.com/services/trackback/6a00d83451d3c069e200e55070a4e98834

Listed below are links to weblogs that reference A JavaCC grammar for Cobol:

» COBOL isn't dead, it just smells funny from David Herron's Blog
I was thinking the other day - what with the Visual Basic compiler for Java, it would make sense for there to be a COBOL compiler for Java. That way we could draw on yet another large body of software... [Read More]

Comments

Hi Tom,

I just purchased your javacc book, specifically because I need to learn more about javacc so I can use this cobol grammar that you reference in your blog better.

I'm building a Cobol debugger (Yeah, what fun, I'm a lunatic...), and I need to extend that cobol grammar to support embedded CICS commands and embedded SQL. I fiddled around with the grammar, but I just don't understand javacc yet, so I didn't get that far. Any chance you might be able to send me an electronic version of the book so I don't have to wait for the paper copy? I can email you a copy of my receipt if you'd like.

Thanks!

jr

Verify your Comment

Previewing your Comment

This is only a preview. Your comment has not yet been posted.

Working...
Your comment could not be posted. Error type:
Your comment has been saved. Comments are moderated and will not appear until approved by the author. Post another comment

The letters and numbers you entered did not match the image. Please try again.

As a final step before posting your comment, enter the letters and numbers you see in the image below. This prevents automated programs from posting comments.

Having trouble reading this image? View an alternate.

Working...

Post a comment

Comments are moderated, and will not appear until the author has approved them.