As we reach the middle of our second decade of Java experience, the community has learned a lot about software development. Many of our best ideas on how to use a Java Virtual Machine (JVM) are now being baked into more advanced languages for the JVM. These languages tend to provide two significant advantages:
- They reduce the amount of ceremony in your code, allowing you to focus on the essence of the problem you are solving.
- They enable some degree of functional programming style. Think of it as a dash of verb-oriented programming to spice up your noun-oriented programming.
I have picked four "Java.next" languages to demonstrate these concepts: Clojure, Groovy, JRuby, and Scala. I have written a series of articles and conference talks describing how these languages can make teams more productive.
This page is the top-level table of contents for Java.next, and I will update the links below as new articles and talks become available.
Articles on Java.next
- Java.next #1: Common Ground
- Java.next #2: Java Interop
- Java.next #3: Dispatch
- Java.next #4: Immutability
Conference talks on Java.next
- Java.next Presentation #1: Common Ground
- Java.next Presentation #3: Dispatch
- Java.next Presentation #4: Immutability