タグ

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

タグの絞り込みを解除

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

  • Closure (クロージャー) って何だろう?

    何年か前に Closure って何? って質問を受けた。当時、ぼくはその質問に答えることは出来なかった。今も出来る自信がない。だから少し勉強してみた。 初歩の初歩を噛じっただけだけど、考えをまとめるためにエントリーにしてみる。 参考文献 Closure と言えば Lisp ということで、Common Lisp のを参考にした。 「ANSI Common Lisp」(Paul Graham) pp.96-99 「実践 Common Lisp」(Peter Seibel) pp.66-67 クロージャは「関数と環境を一緒にしたもの」。これがクロージャーの説明として一番良く聞く文言。 クロージャを知っている人にはこれで十分なのでせう。でも、ぼくにはこの説明はまるで霞を掴むように思える。 更に、「ANSI Common Lisp」から引用する。 関数が外部で定義された変数を参照するとき、その変数

    Closure (クロージャー) って何だろう?
  • Martin Fowler's Bliki in Japanese - クロージャ

    http://martinfowler.com/bliki/Closure.html 動的言語に興味がでてくると、 クロージャやブロックと呼ばれる概念に出会うと思います。 C/C++/Java/C# などクロージャを持たない言語をご使用の方は、 どういったものなのかご存知ないかもしれません。 ここでは簡単にクロージャについて説明します。 クロージャを持った素晴らしい言語を使ったことある方にとっては、 あまり面白くない話かもしれません。 クロージャは長年使用されてきました。 私が最初に出会ったのは、おそらく Smalltalk だったと思います。 Smalltalk ではブロックと呼んでいました。 Lisp ではクロージャを多用しています。 Ruby でもクロージャが提供されています――多くの rubyist がスクリプト言語に Ruby を選ぶのはこのためです。 基的にクロージャとは、ブ

  • 1