Neal Gafter on Evolving the Java Language
Neal starts off by reframing his presentation; from the original question, "what is it like to evolve a mature language?" to, "what is it like to evolve a widely deployed language?" The latter question exposes the real issues involved, which include:
- Behavioral compatibility with existing APIs;
- Choosing appropriate design principles that, in turn, influence the choice of new features;
- Examination of the best ways to modify, extend, or add features; and,
- Keep in mind additional long term goals so that immediate improvements do not heedlessly impair the possibility of reaching those goals.
The two categories of immediate short term design goals discussed by Gafter include: Regularize the existing Language and increase modularity. In the first category, issues like fixing type inference, limited operator overriding, and improved catch clauses were noted. Details and examples of these are presented and discussed. The presentation concludes with a discussion of specific long term goals for future extensions and improvements for Java.
View Neal Gafter on Evolving the Java Language for details.
Community comments
Bottom line
by Dan Tines,
Re: Bottom line
by Leonardo Vargas,
Re: Bottom line
by Christian Gravata,
Re: Bottom line
by Dan Tines,
Outdated Bio
by Oli c,
ok...
by Ivan L,
Stale content
by Neil Bartlett,
Not very informative
by Christopher Churchill,
Bottom line
by Dan Tines,
Your message is awaiting moderation. Thank you for participating in the discussion.
This was obviously made before the Oracle takeover.
The best thing for "Java" would be to port C# to the JVM.
Re: Bottom line
by Leonardo Vargas,
Your message is awaiting moderation. Thank you for participating in the discussion.
C# for Java already exists. For more information see dev.mainsoft.com/Default.aspx?tabid=177
Outdated Bio
by Oli c,
Your message is awaiting moderation. Thank you for participating in the discussion.
Doesn't Neal Gafter work for Microsoft now?
Re: Bottom line
by Christian Gravata,
Your message is awaiting moderation. Thank you for participating in the discussion.
C# == Java port to the MS JVM (CLR)
ok...
by Ivan L,
Your message is awaiting moderation. Thank you for participating in the discussion.
so why is type inference (the hashmap => map assignment) a potential feature, but the put/get example not.
generics still seem arbitrary to me - a system that meets someones stringent criteria, but not the majorities expectation.
Stale content
by Neil Bartlett,
Your message is awaiting moderation. Thank you for participating in the discussion.
This video was recorded in March 2008. Given how quickly things change, it would be nice to see some fresh content.
"Info: Tracking change and innovation in the enterprise software development community"... one year after it happens.
Re: Bottom line
by Dan Tines,
Your message is awaiting moderation. Thank you for participating in the discussion.
No, C# evolved. Java didn't
Not very informative
by Christopher Churchill,
Your message is awaiting moderation. Thank you for participating in the discussion.
Neal gafter sucks. Josh bloch does a far better job at these kind of improvements to the JDK platform. Dunno what he is upto.