このブログの更新は Twitterアカウント @m_hiyama で通知されます。
Follow @m_hiyama

メールでのご連絡は hiyama{at}chimaira{dot}org まで。

はじめてのメールはスパムと判定されることがあります。最初は、信頼されているドメインから差し障りのない文面を送っていただけると、スパムと判定されにくいと思います。

参照用 記事

おおー、これはラムダ式だ

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

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


<> (int x, int y) -> int { return x + y; }
型付きラムダの記法、ほとんどそのままですね;λ(x:int, y:int).(x + y):int

コサキさん曰く:

さすがはC++の親!
シンタックスのセンスの悪さは余人の追従を許しません

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

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

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

<>も意味分からんし。

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

見方のコツ:

  1. 先入観を排除し、頭を白紙にする。
  2. 白紙とは何も考えないこと。
  3. 目を細める。
  4. それでもダメなら目をつぶる。
  5. 目をつぶって何も考えないようにすれば、とても自然に思えてくる。だんだん、思えてくる。とーっても自然に思えてくる。