KotlinKotlinのロゴ
パラダイムオブジェクト指向プログラミング、関数型プログラミング、命令型プログラミング、構造化プログラミング、宣言型プログラミング、ジェネリックプログラミング、リフレクション、並行計算
Kotlin(コトリン)は、ジェットブレインズのアンドリー・ブレスラフ、ドミトリー・ジェメロフが開発した、静的型付けのオブジェクト指向プログラミング言語である。 Kotlinは、ロシア・サンクトペテルブルクにある、ジェットブレインズの研究所で生まれた。 ジェットブレインズ社は Java、Ruby、Python などのプログラミング言語による開発環境などを開発して販売してきた。Kotlinは、同社の経験を活かしJavaをもっと簡潔・安全になるように改良した産業利用向け汎用言語として開発され、2011年7月20日に発表された。 Java仮想マシン上で動作するため、Javaで書かれたプログラムと同程度に速くコンパイルされ同程度に速く動作するとしている。 Javaに望まれている機能であっても互換性を保つために実現できていない機能や、将来のJavaの仕様で実現が予定されている機能から、有用と思われる機能を採用した。また、Java仮想マシンで動く点で似ているスクリプト言語 Groovy や関数型プログラミング言語の要素が強い Scala から、機能や簡易記法(糖衣構文)を採用した。そのほか、ジェネリクスの構文などでC#の影響を受けている部分もある[2]。 2012年2月14日、Kotlin はApacheライセンス バージョン2.0に基づいてオープンソース化された[3][4]。 アプリケーションプログラミングインタフェース[5]が公開され、ウェブサイト上でのデモンストレーション[6][7] のほか、スタンドアローンなコンパイラの形と同社提供の統合開発環境であるIntelliJ IDEAのプラグインとして、マイルストーン安定版「M1」が2012年4月12日より提供[8]された。 「M2」では言語機能が強化されたほか、Android 上の開発および動作も可能となり、JavaScript へのコンパイルもサポートされた[9]。「M3」では約400件の障害修正を行ない、性能向上、型引数推論の強化などを行った[10]。「M4」で128件の障害修正を行ない、型引数推論の高速化、JDK 7 対応、データクラスの copy メソッド新設などを行った[11]。「M6」では、Android Studioのプラグインによるサポートが追加された他、Mavenのサポート、言語の改善としてSAM(Single Abstract Method)変換のサポートやアノテーションの改善などを行った[12]。
開発経緯
歴史