JVM上で実行できる動的言語「Golo 2.0」リリース

 JVM上で実行できる軽量の動的言語「Golo」開発プロジェクトが最新版「Golo 2.0.0」をリリースした。Goloは弱い動的型付け機構を持つシンプルな言語で、習得が容易という特徴があるという。

 メソッド呼び出しにinvokedynamicを使用するなど、JVMの最新の機能を活用しており、数時間ですぐに習得できるという。フランスCITI Laboratoryとフランス国立応用科学院リヨン校(INSA-Lyon)によるDynamidグループの研究活動の成果として開発、2013年にオープンソースで公開した。ライセンスはApache License 2.0。

 Golo 2.0は、2014年7月にリリースされた「Golo 1.0.0」に続くメジャーバージョンとなる。Dynamidグループ外からの貢献も盛り込まれたという。2.0.0は変数名や関数名などにマルチバイト文字や絵文字を利用できるようになった。また、Goloは既存のクラスにメソッドを加える方法としてClass Augmentationを持つが、2.0では新機能としてAugmentationに名称を付けることができるようになった。Rust、Groovy、Scalaにおけるトレイトやmixinのように、augmentationキーワードを用いて関数セットに名称を付け、クラスに適用できるという。

 また最初の呼び出し結果をキャッシュするBanged Function Callも実装した。Rangeオブジェクトも強化し、リテラルシンタックスをもち、incrementedByとdecrementedByの両メソッドにも対応した。このほか、標準ライブラリでnewTypedArray、uuid、sleepの3種の関数が新たに加わった。

 GoloはプロジェクトのWebサイトより入手できる。ネイティブパッケージ、ソースコードのほか、UbuntuとJava SE 8べースのDocker向けイメージも提供する。

Golo
http://golo-lang.org/