JetBrains, known as the maker of the IntelliJ Idea Java IDE, appears set to add another language to the increasingly crowded field of Java Virtual Machine-based languages.
The company's Project Kotlin, detailed on the JetBrains website this week, is a statically typed programming language geared to "industrial use," meaning Kotlin is not just a research project. The language is due in a public beta release by the end of this year. Kotlin would join other languages finding their niche alongside Java itself on the JVM, including Scala, JRuby, and Groovy.
"We've looked at all of the existing JVM languages, and none of them meet our needs. Scala has the right features, but its most obvious deficiency is very slow compilation," said Dmitry Jemerov, JetBrains development lead, on Friday. "Other languages don't meet some of our requirements in terms of the feature set. Moreover, the initial reception of Kotlin shows that the community trusts JetBrains and expects it to do a good job in terms of language implementation and tooling support."
The company said in its Kotlin documentation that while it knows how good Java is, the Java programming language has limitations and problems that are "either impossible or very hard to fix due to backward-compatibility issues." JetBrains believes the community can benefit from a new statically typed JVM-targeted language "free of the legacy trouble and having the features so desperately wanted by the developers." JetBrains wants the object-oriented Kotlin language to be safer than Java, statically checking for pitfalls such as null pointer dereference, and also more concise than Java. Another goal is to make it simpler than its "most mature competitor," Scala.
Kotlin was lauded by an analyst who also questioned how much adoption it might get. "Kotlin's purpose is to fix some of the problems that programmers have with Java," said analyst John Rymer, of Forrester. "Most of the features seem to be trying to simplify creation of complex applications and packing more power into each line of code. These are useful goals. However, I doubt a lot of people will drop Java and adopt Kotlin, if only from force of habit. Also, many of our clients have standards that prevent adoption of new languages like Kotlin for many years."
Both the compiler for the language and an IntelliJ Idea plug-in for it will be offered via open source under an Apache license. Kotlin libraries also may be developed. JetBrains plans to make the language extensible in several ways, from inline functions to annotations, type loaders, and language quotations. The name "Kotlin" comes from an island near Saint Petersburg, Russia. JetBrains has research and development operations in the city.
Sign up for Computerworld eNewsletters.