タグ

関連タグで絞り込む (3)

タグの絞り込みを解除

programmingとclosureに関するrydotのブックマーク (2)

  • Java8のlambda構文がどのようにクロージャーではないか - きしだのHatena

    Java8にlambda構文が入りましたが、これはクロージャーではない、とされています。 では、どのように「クロージャーではない」のか、ちょっと見てみます。 まず、lambdaを返すメソッドを定義します。 public static Supplier<String> createMessenger(String name, String address){ return () -> { return String.format("私は%s、%sに住んでる", name, address); }; } 呼び出すと、こんな感じでSupplierを受け取ります。 Supplier<String> messenger = createMessenger("きしだ", "ふくおか"); このSupplierを実行すると、次のようになります。 System.out.println(messenger.

    Java8のlambda構文がどのようにクロージャーではないか - きしだのHatena
  • 404 Blog Not Found:Cで強引にたらいを後回し

    2007年05月22日22:00 カテゴリLightweight Languages Cで強引にたらいを後回し 404 Blog Not Found:λ萌え - たらいを後回しを書いた後、なんとかCでも出来ないかと、車輪の再発明する代わりに横車を押してみた。 GCCにはclosureがある! 実は以外と知られていないが、gccでは無名関数は使えなくとも、closureは使える。最近では無名関数をサポートしている言語が人気ということもあり、また無名関数の多くがclosureとしても用いられているため、無名関数の別名としてclosureという呼び方をすることもあるが(私もときどきやる)。この二つは来は別物である。JavaScriptで書くと、 var outer = 1; var closure = function(x){ return outer++ }; var nonclosure

    404 Blog Not Found:Cで強引にたらいを後回し
  • 1