Gilad Bracha Interview
Gilad Bracha: 'Java is becoming Cobol 2.0.'
JAXenter: In this age of emerging programming languages on the JVM, many are wondering what will happen to good old fashioned Java. At JAX 2010 you will talk about a Java Post Mortem. What, in your opinion, are Java's strengths?
Gilad Bracha: As a language, Java's great contribution was popularizing ideas that existed in other languages. Chief among these was garbage collection. Java proved that GC was ready for the mainstream. Another important feature I would cite is interfaces. This is an idea that had been floating around in various systems (including my own work on Strongtalk) but had never seen widespread adoption. Finally, I'd mention reflection. Again, this by no means new to Java; but Java made it accessible to a huge audience.
None of these things are unique to Java anymore. At this point, what it has going for it is mainly inertia, and being the native language of the JVM.
JAXenter: And what are the weak points that may lead to its demise?
Gilad Bracha: Primitive types, static state, constructors, lack of true closures, and overall an oppressive rigidity. The rigidity is not just technical; it impacts the language's evolution. The process has become too bureaucratic and politicized. Design by committee is not the way to produce inspiring results. To be fair, old languages never die; they just fade away (to paraphrase MacArthur.) Java is becoming Cobol 2.0. It will be around for a long time yet, but just not interesting or exciting.
JAXenter: One of your talks at the Java Language Days at JAX will discuss the dynamic language Newspeak – a language in the tradition of Self and Smalltalk that supports modularity and security. What is Newspeak about?
Gilad Bracha: Newspeak is about having your cake and eating it. We are out to combine the flexibility and simplicity of reflective, dynamic languages like Smalltalk with modularity, security and interoperability - areas where these languages have been weak. Newspeak is also about minimalism - covering a lot of ground with powerful, compositional design, rather than bloat. That makes for compact, lightweight systems that are easy to learn and easy to evolve.
JAXenter: As you write in the Newspeak blog, justifying a new programming language is hard. So why should we switch to Newspeak?
Gilad Bracha: The world of programming is changing; in particular, the internet cloud is changing how applications are done. The web browser is one the main deployment vectors. The browser, and platforms like ChromeOS, iPhone/iPad and Android tie applications to cloud based services. Newspeak is designed to make it easy to program such services. I don't expect people to switch just yet - we still have a lot of work to do. Right now, the main space where I'd recommend using Newspeak in production is traditional Windows clients; but later this year I think we'll have push button web deployment ready. That means writing an elegant client in a beautiful high level language, and having it run on the browser and natively, with much less effort than existing platforms.