Paul D. Anderson wrote:
If you think it is difficult to persuade Walter to adopt your latest
idea for improved syntax or new language features -- try getting a
change into Java.

JavaOne 2009 is just concluded. The Java community is moving toward
release of JDK 7. It's overdue and underwhelming. Project Coin
(http://openjdk.java.net/projects/coin/) exists "to determine what
set of small language changes should be added to JDK 7". Joe Darcy
(http://blogs.sun.com/darcy/) is the lead on Project Coin. He has
posted the slides for his presentation at JavaOne:
http://blogs.sun.com/darcy/resource/JavaOne/J1_2009-TS-4060.pdf.

A couple of quick impressions:

1. The list of changes is small and shrinking. Only five will make
the cut.

2. Many of the requested syntax changes already exist in D. (Of
course.)

3. He explains (repeatedly) the amount of work required to make a
"small" change. This is the primary justification for the shortness
of the list.

4. His stance with regard to changes is this: Don't explain why a
change shouldn't be kept out ("It's trivial.", "Everybody does it.",
"It's intuitive."), but rather why it should be put in. Give a clear
statement of what's proposed, how to implement it, and a list of
reasons why it should be included.

There are some lessons for us there, I think. (I don't mean to
criticize anyone or any suggestions that have been made. Just to
point out some of the things we all ought to consider. And to remind
us that having a forum where we can discuss changes and have them
considered by a lot of intelligent, interested people is a rare
thing.)

Pretty cool slides. Some highlights I found interesting:

* split() should be the inverse of join() as Brad suggested

* that "why don't we" is the right thing to ask instead of "why don't you" :o)

* there is a strong momentum of lightweight iterators

* finally they seem to have heard of the STL in slides 36 and 37

* they finally see the naked emperor on slide 56 yet incredibly they still manage to continue doing precisely the wrong thing on slide 57; this one is enormously vexing to me

* what can we do about the feature on slide 33?

* as always enums are more complicated than they seem

* dangerously close to auto on slide 64; you'd wonder what would it take to make that penny drop :o)

* error text on slide 68 is longer than the error text on slide 67 that it's supposed to improve on

* there is nothing to improve threads, further demotivating support for Deadlock-Oriented Programming (DOP) in D


Andrei

Reply via email to