Project Kotlin is the codename for a statically-typed JVM-targeted programming language developed by JetBrains

JetBrainsは7月20日(ロシア時間)、工業利用を想定して開発された新しいJava仮想マシン向けのプログラミング言語「Kotlin」を発表した。KotlinはJavaと同じ静的に型付けされたプログラミング言語。文法もJavaと似ている。Java SE 8で導入されることになる機能や、Javaには導入されていない機能がすでに導入されている。現実的に普及する可能性があるプログラミング言語として興味深い。

JetBrainsはJavaの統合開発環境であるIntellJ IDEAを開発している企業。Javaのみならずほかのプログラミング言語向けの開発ツールも開発しており、Javaに関して高い技術を有している。プログラミング言語としてのJavaは後方互換性の維持やプログラミング言語としての複雑さ回避などの観点から、いまだに導入されていない機能や、改善できない問題点などもある。

JetBrainsは同社のJava開発の知見を活かし、こうした問題を洗い出し、整理し、新しいプログラミング言語「Kotlin」としてまとめあげた。Javaも言語仕様のレベルで機能を拡張し、特にプログラミングに関する煩雑さの低減がバージョンごとに実施されているが、後方互換性を維持する限り自ずと限界が現れる。

namespace demo


fun main(args : Array<String>) {
  println("Hello, world!")
}

Kotlinは後発であり、Java開発を熟知した企業が策定していることもあって、そうした問題になる部分が最初から言語仕様としてスマートに対策されている。セキュリティ的にもJavaよりも好ましい状態になるように、いくつかの点で動作がJavaとは異なっており、ミスが少なくなるようになっている。

また最初からJavaとの相互接続性を実現できる設計になっているため、既存のJavaの資産をそのまま活用できるほか、Java SE 7やJava SE 8といった最新の成果物のライブラリをそのまま利用できるという特徴がある。

Kotlinと類似した特徴を持つJava仮想マシンをターゲットとしたプログラミング言語はほかにもいくつかあるが、その中でもKotlinはいくつかの点で興味深い。まず、IntelliJ IDEAという統合開発環境を提供しているJetBrainsが手がけているということ。2012年中には最初のコンパイラをリリースしたいとしており、開発環境が整うことがほぼ確実とみられる。

そして最初から工業利用を想定して仕様が策定されており、実際に仕様もそれを実現できるように工夫されている。静的な型付け言語で、コンパイル時により多くのチェックが可能である点も、工業的に使いやすい側面がある。