2007年10月30日火曜日

ラムダ式?

C#3.0の話題を出したときに、少しだけでていたラムダ式。
CodeZineでサンプルがでていたのでちょっと張っておく。

Common Lispでのラムダ式の一例

(setf f #'(lambda (x) (expt 2 x))) (funcall f 10)

おびただしい量の括弧です。しかし、C# 3.0のラムダ式も負けてはいません。次のようになります。

カッコいいラムダ式の一例

Func<int, int> f = (((x)=>((((x)>10))?(((x)+x)):((x*(x))))));
f( 9 );

これ、なんていう正規表現?可読性の「か」の字もねぇぞ!

0 件のコメント:

コメントを投稿