Rubyの力はブロックにありと常々主張している。その文脈導入の力。そして、それを陰から支えるのが継続である。 Rubyの力はブロック構文にある。これを単なるlabmdaだとかコールバックだとか言ってしまうのは簡単だが、こういう構文の形をしていることに意味がある。まつもとさんは IPA未踏 千葉滋PM案件報告会 において、「DSLにおいてコンテキストを生成する」という点に着目してこれを説明した。例えば、Rakefileにおけるターゲットがそうであるし、Railsのconfig/routes.rbがそうである。 まつもとさんの言う視覚的に明確な形でコンテキストを導入する力としてのブロックに含まれてしまうのだが、私が常々主張してきたのは File.open のようなリソース管理の方法としてのブロックである。 先日ついつい 愚痴 を書いてしまったけれど、GCな世界で育った初心者はどうもリソース管理