Cマガ
ここ1,2年くらい読んでませんでしたが、http://www.cmagazine.jp/を見たら、
特別記事 英語文献の読み方/CodeRuler実戦記/ハイブリッド言語「Nemerle」/ヴァーチャルリアリティ作品の面白さ
なんと来月、Nemerleの記事が載るみたいですね。ハイブリッド言語と紹介しているので、オブジェクト指向と関数型言語の両方から見た紹介になるのかな?
ところで、Nemerleはハイブリッドな部分を捨てて拡張版C#として使っても結構使えたりします。C#+αな部分を列挙すると、
- Generics(Java方式)
- 匿名メソッド
- メソッド、デリゲートの自動変換(XXXEventHandlerが不要)
- パーシャルタイプ
- module(C#2.0のstatic class)
- 型推論
- マクロ
このようにC#2.0の主要な新機能はIterator以外はサポートしており、もちろん.NET1.1で動作します。あと、型推論が地味に便利です。
Dictionaryd = new Dictionary (); d.Add ("Ala", 7);
C#2.0だとこれだけ書くことになりますが、Nemerleだと、
def d = Dictionary (); d.Add ("Ala", 7);
これだけで済みます。
余談。Nemerleを採用するデメリットは言語がマイナー過ぎるに尽きます。もし、これがC#2.0とソース互換となるオプションとか用意して、.NET1.1でGenericsが使えるベターC#1.0みたいな感じだったら、飛びつく人が多かった気が・・・(^^;