コサキさんのblogエントリーに、C++へのラムダ式とクロージャ導入の提案ネタが。ふーん、そうなの。

次のような構文だそうです。



<> (int x, int y) -> int { return x + y; }

λ(x:int, y:int).(x + y):int

型付きラムダの記法、ほとんどそのままですね；

コサキさん曰く：

さすがはC++の親！

シンタックスのセンスの悪さは余人の追従を許しません

センスの「良し悪し」つうよりは、「独特なセンス」と言うべき、かと。

ドコが自然な構文なのかまるで分かりません。

まず -> が出てくるのが論外。これは見た瞬間にポインタに脳内置換される記号ですから他の意味に使ってはいけません

先入観を排除して「->」を見れば、ほら、何の変哲もない普通の矢印。「引数の型 →（矢印） 値の型」なら「自然」。

<>も意味分からんし。

目を細めて見てくださいよ、……、ホーラ、λでしょ。えっ、◇に見える？ それは、大文字Λを上下（寝かせて左右でもOK）に重ねて書いたものですから、やっぱりラムダです。まちがいなくラムダ。

見方のコツ：