Iodine does away with some of the limitations that keep Java developers in check


Looking for a new Java language front-end? The folks at RemObjects Software have come up with a new language compiler for their Elements platform. Iodine: it’s not just for doctors anymore.

In order to support the Java language, RemObjects Software has created Iodine, a new Java language compiler front-end. The goal with Iodine is to provide a better Java development experience for existing Java developers for the JVM or Android.


Iodine is a full super-set of Java 8, but it provides a number of enhanced abilities and tools to make writing Java code easier and more productive. All of your existing code should compile right away, no matter whether it’s for Android or Java SE. This allows you to port your project onto Iodine seamlessly.

Here are some of the enhancements that are a part of the initial release:

  • optional type inference with the var keyword
  • “out” and “by-reference” parameters
  • type extensions
  • partial classes
  • powerful aspects
  • accessing getters/setters using property syntax
  • global (class-less) methods and fields
  • Cocoa-style multi-part method names (aka named parameters)

Iodine also does away with some of the regular limitations that keep Java developers in check. Iodine allows developers to have more than one class per file and more than one file per class. You also don’t have to match the package/namespace structure of your code with folders on disk. Helpful.

SEE MORE: IBM and Lightbend collaborate on a toolchain for Java and Scala developers

Of course, Iodine intends to keep in sync with the official Java language as it develops with Java 9 and beyond.

IDE options

For those of us who need a new IDE option, Iodine has several options for both Windows and Mac.

For Mac, Iodine uses Fire, an IDE from RemObjects Software. This is a lightweight, simple IDE that was designed explicitly to work with Iodine.

For Windows users, Iodine fully integrates with Visual Studio. However, if you want to try something new, RemObjects Software also offers their own Windows IDE, Water. (I’m beginning to sense an elemental theme here.) Water is designed explicitly for Windows around the same principles that make Fire great.

Iodine’s tool chain

Helpfully, Iodine comes with a useful build tool chain that will allow developers to bring their projects from source code to final execution, no matter whether it’s .jar or .apk. Iodine has good error reporting, including auto-fix-its and recoverable errors for simple mistakes (wrong case, missing characters, etc.). The core compile is fast. As Gradle/Maven package is built into the IDEs and build chain, there is no need to manually tweak .gradle script files.

SEE MORE: Why do developers choose Swift for enterprise app development?

Since Iodine is part of RemObjects Software’s four-language Elements family, it is possible for developers to exult mix in code written in Swift, C#, or Oxygene and compile that into Java or Android projects. This is especially helpful for re-using code snippets found online in the “wrong” language.


Iodine has several versions, for differing levels of pricing. The Silver Community Edition of Iodine is free and works on all platforms. However, it is limited to the use of Swift language to create apps. The Full Elements package is decidedly more pricy, coming in at $799 for a developer license. So, maybe try out the free version and see if you absolutely have to have the whole shebang.

So, if you’re interested in a great tool chain for developing Java and Android apps using the Java language – with a better compiler, faster IDEs and a more sophisticated over-all tool chain – check out Iodine!