let F# = .NET + C# + OCaml

一瞬、おおっ!と思ったが、この等式は嘘みたい。http://developers.slashdot.org/comments.pl?sid=33866&cid=3664756によると


ここが.NETの嫌な所だ。「たくさんの言語をサポートする」って口約束だけなんだよ。実際にサポートされるのは、たくさんの骨抜きになった言語なのさ。

つまり、確かにOCamlにはいろいろ面白い機能があるがC#にのっからないものは捨てられると。実際の式はこうなるようだ。

let F# = .NET + C# + OCaml - (OCaml - C#)

結局、残るのは.NETと二倍に太ったC#だけということね。

しかし、何で.NETが言語の研究者を引きつけるかと言うと、言語の研究者にとってはJavaがしゃくのタネだからだろうね。「Javaみたいなクソ言語がメジャーになって、俺の可愛いいXXXXがなぜメジャーになれない」と思っている人が、一発逆転を狙って、.NETに入ってくる(そして宣伝に使われて骨抜きにされて捨てられる)と。

潜在的な利用可能なリソースを漏れなく活用しているわけだから、これがゼロサム世界の戦争だとしたら、マイクロソフトのしていることはこれ以上ない正解なんだろう。問題はここがゼロサム世界じゃないってことだ。