Clover2開発日誌

Clover2というJavaのように静的な型を持つRubyのようなコンパイラ+仮想マシンの開発日誌です。LLVMでJITもします。https://github.com/ab25cqにて開発しています。

List.mapが型チェックをするようになりました。

List.mapが型チェックをするようになりました。

 

l: List<String> = list { 1, 2, 3 }.map() {|n:Integer| return n.toString(); }

コンパイルできます。

これまで通りのAnonymousを返すコードもそのまま動きます。

一応互換性がある変更点です。

 

KotlinのList.mapの定義の美しさにびっくりして、一時期電車の中で定義をプリントアウトした紙を眺め続けて、うっとりしていました。

ようやく、Clover2でも同じものが手に入りました。

良かったら、使ってください。

 

定義はContainer.clcにあるので見てくださいね。まあ、単純な実装です。

 

それでは、enojoy programing!