The Eclipse Foundation has released Eclipse Xtend 2.4, a new statically typed programming language that translates to readable Java source code. Xtend focuses on bidirectional interoperability with Java and runs on all Java VMs and Android's Dalvik VM.
- The Essential Guide to IT Transformation
- Consolidation: The Foundation for IT Business Transformation
A number of new JVM-based languages have been introduced into the Java ecosystem, such as Clojure, JRuby, Groovy, Scala, and Xtend. Eclipse says that Xtend provides a "better Java language" by adding language features such as lambdas and operator overloading, as well as extension methods that reduce what the foundation labels as the "verbosity" of the Java language.
Xtend works with Java to allow developers to reuse existing Java libraries, frameworks, and tools. The new features in the Xtend 2.4 release include support for writing Android applications so that developers can use Xtend to create apps with less code than via the normal Java language.
NOTE: Xtend works with the existing Android Development Kit, so it has minimal impact on the size of the final application.
Also highlighted are Active Annotations. This new feature in Xtend builds upon Java annotations and makes it possible to participate in the translation process of Xtend source code to Java source code. Code patterns can now be formally implemented and automatically expanded during compilation, which reduces the amount of boilerplate developers have to write.
Xtend 2.4 introduces several new language features, including collection literals, extension variables, and support for declaring enums, interfaces, and regular annotations. There is also improved tool support as the Xtend plugin for the Eclipse IDE has been enhanced to provide "better developer tooling support" (says Eclipse) than other JVM languages.
"Xtend 2.4 is a very significant release for the Xtend project," said Sven Efftinge, project lead of Xtend. "We are particularly proud of the new Active Annotation feature since it solves many of the problems developers are working around with wizards and code generators today. We are also excited about reaching into the Android community to offer a new language for building Android applications."