タグ

closureに関するteddy-gのブックマーク (3)

  • クロージャーを作成する方法 - Perl入門ゼミ

    Perl › サブルーチン › here Perlで「クロージャー」を作成する方法を解説します。 クロージャの定義 クロージャの定義をコードを使って解説します。 use strict; use warnings; # もっともシンプルなクロージャ { # 変数の生成 my $var = 5; sub var { return $var; } } # スコープが終わってもvarサブルーチンに参照されているため、 # $var は存在し続ける。 # var サブルーチンだけが、$var を見ることが可能。 print "1: もっともシンプルなクロージャ\n"; print var(), "\n"; クロージャの定義 クロージャであるための条件は、サブルーチンが、自分のスコープ外のレキシカル変数を参照していることです。( この例では、var が、自分のスコープ外の$var を参照。) クロージ

    クロージャーを作成する方法 - Perl入門ゼミ
    teddy-g
    teddy-g 2009/05/20
    で、ClosureとClassの違いって結局何よ、って言うとクロージャは一発屋でクラスはヒットメーカーみたいな
  • Life is beautiful: Javascript、クロージャを使ったプライベート関数の隠蔽について

    (このエントリーは「Javascriptクイズ:無名関数と実行効率の話」の続編。) 「???」と頭をかしげる太郎に、「じゃあ、これだったらどうかな?」と三郎はコードを書き始めます。 function code2name(code) { var mapping = { 'us': 'United States', 'ja': 'Japan', 'ko': 'Korea', 'ru': 'Russa', 'uk': 'United Kingdom', 'fr': 'France', 'cc': 'China', 'gw': 'Germany' }; return mapping[code] || '(unknown)'; } 「カントリーコードを国名に変換しているんですね。」と太郎。 「どこが問題だか分かる?」 「うーん、マッピングのためのオブジェクトを毎回作り直しているところかな。」 「そう

    teddy-g
    teddy-g 2009/05/16
    そっか、こういう関数作るときにクロージャが便利なんだな
  • ubieta.net is coming soon

    is a totally awesome idea still being worked on. Check back later.

    teddy-g
    teddy-g 2009/05/16
    これでやっとクロージャが何か分かった。つまり、初期値を与えられたら以降それを固定値として参照可能な関数に化けるヘンタイがクロージャなんだな
  • 1