BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage News Presentation: Evolving the Java Language

Presentation: Evolving the Java Language

Leia em Português

This item in japanese

Bookmarks

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.

Rate this Article

Adoption
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Community comments

  • 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.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

BT