Xtend 2.4 introduces Active Annotations and Android support
Xtend, the Eclipse Foundation's statically typed programming language, has been updated to version 2.4 and now the JVM-hosted language has new "Active Annotations" and a new type system implementation. Xtend's Active Annotations allow a coder to declare an annotation by describing how it should be translated into Java source code.
This allows the programmer to participate in how Xtend translates code and potentially add annotations to, for example, implement common design patterns. The Eclipse IDE and compiler are aware of how Active Annotations operate and so error messages, linking, navigation and content assistance all behave taking them into account. The Xtend type system has been rewritten in a process which started in April 2012; the replacement type system is 25 per cent faster than the older code and is reportedly easier for developers to work with.
Android devices have, by dint of running Java, become a potential target for Xtend; debugging Android applications was harder as Xtend only supported JSR-45 debugging and that is one Java standard that isn't supported by the Dalvik VM. With Xtend 2.4 though, the Xtend compiler can be configured to insert the debug information so that it is compatible with Dalvik and its tools. There is also a Maven Archetype available to make it easy – as long as Maven and the Android SDK are installed – to get started with an Xtend Android project.
Other new language features in Xtend include unmodifiable collections and arrays, direct declaration of interfaces, enumerations and annotation types, and extension providers, the ability to add new methods to existing types without modifying them. Also added are the
!== identity equality operators. IDE integration has also been improved with a better import organiser, extract method and local variable refactorings, error suppression and optional errors, more quickfix suggestions, better content assistance and a configurable formatter.