Skip to main content

Dance this Mess Around

Posted by editor on January 17, 2007 at 11:11 AM PST

Taking new language ideas out for a spin

Remember a few months ago when we linked to Elliotte Rusty Harold's blog RatJava, in which he suggested taking the open-source javac compiler and using it to support whatever new language features you like? Well consider the same idea with a different name and James Gosling and Peter von der Ahé behind it. That would be the Kitchen Sink Language project on java.net.

But what is the kitchen sink, beyond the obvious metaphor? The Artima interview Peter von der Ahé on the Kitchen Sink Language Project gets at some of the ideas behind creating the project:

It was originally James [Gosling]'s idea, and is something he mentioned a while ago when we started talking about open-sourcing the compiler. He wanted to be able to create a place where you could experiment easily with adding various language features. [That way], we can evaluate those features before we decide to propose them for inclusion in the standard through the JCP. When we decide to do something in the JCP, it's almost a done deal, and is often fully developed. So where is the room to experiment? That's exactly what we can do now that the compiler is open-source. We decided to set up a project so that anyone can join in.

As the community discusses JDK 7 proposals like closures and a new properties syntax, it's reassuring to know that these ideas can now be tested out before they get turned into formal JSR's (after all, James and Peter are the authors of the current closures proposal). Will that result in more practical JSR's, or in better support up-front for major syntax changes? There are a lot of reasons to like this idea and watch where it's going.


Also in Java Today,
authors Ali-Reza Adl-Tabatabai, Christos Kozyrakis, and, Bratin Saha take on the implications of multicore programming with a new concurrency model in the ACM Queue article Unlocking Concurrency: Multicore programming with transactional memory. "TM (transactional memory) provides a new concurrency-control construct that avoids the pitfalls of locks and significantly eases concurrent programming. It brings to mainstream parallel programming proven concurrency-control concepts used for decades by the database community. Transactional-language constructs are easy to use and can lead to programs that scale."

ZDNet blogger Ed Burnette argues against the iPhone's anti-Java stance in Jobs: No Java for you. "It will be a few months before the Apple iPhone is available to customers, and a lot can change between now and then. [...] But for now, it looks like application development on the iPhone will all be done in-house and it won't be done in Java. That would be a real shame."


Ludovic