jastrachan | 7 Dec 01:59 2004

Re: Status

On 6 Dec 2004, at 16:45, Chris Poirier wrote:
> Hi all,
> Okay, I think I was just passive-aggressive on the user list, so maybe 
> I
> should just admit I'm angry and disillusioned and take it up here, 
> where
> it belongs.
> James, John (Rose), whoever else is involved: I'm on the expert group
> for this JSR; I've written /thousands/ of lines of code for this
> project.  Why is it I /still/ don't know what happened at the JSR
> meeting a month ago?  Why is it that code apparently is being written
> before any documentation makes it to this group?

John answered this pretty well in a previous mail. I'd just like to 
reiterate whats been going on. We've been trying to start

(i) a series of unit tests for the TCK to describe what is and what 
isn't valid groovy expressions. i.e. trying to document the fixes we 
made to the language using real unit-test examples in the JSR area of 
the wiki. Not heaps there yet but hopefully soon they'll be fairly 
substantial. Its one of the easiest ways to document things via 

(ii) as an experiment to check if we've fixed the plethora of 
ambiguities we had, both John and Jeremy have been experimenting 
writing straight forward parsers of the language which should be 
capable of auto-generating EBNF so that folks can see the syntax of the 
language clearly documented.

The current Wiki JSR documentation that John put together is trying to 
document the language by kinda doing a delta on Java; following the JLS 
and describing the difference. So John as an experiment, took a Java 
Antlr parser and started hacking it to implement Groovy to test out the 

> James: you told me that the primary reason you wanted this JSR thing 
> was
> to add some formality and structure to the process.  How has the JSR
> changed anything?  It would appear to me that you are still coding 
> first
> and documenting later.

We've just had a 2 day long conference - thats a major change!

So far we're focussing on the grammar & test cases rather than hacking 
the runtime - in many ways in an attempt to get everyone up to speed 
with where we are as fast as possible.

> Guys, I've spent the weekend actually /writing/ Groovy, for once.  In 
> my
> opinion, informed by that experience, the project needs two things
> before any new code gets written: documentation; and a design for an
> error-handling and reporting system that takes precedence over every
> other aspect of any new development.  Error reporting is currently
> atrocious, and any design for a new grammar /or/ implementation must
> take that problem /much/ more seriously than we have in the past.

Agreed! This is exactly why I'm keen to get a cast iron grammar & EBNF 
notation, nicely documented with lots of test cases ASAP.