ホワイの(感動的)Rubyガイド
ちょっと素敵で詩的なRubyチュートリアル。これ翻訳大変だと思う(Joel本の青木さんですね)
http://www.aoky.net/articles/why_poignant_guide_to_ruby/
なんか素敵だなーと思ったところ。
ブロック引数はパイプ記号(|)で囲まれた変数のセットで、カンマで区切られる。
|x| や |x,y| や |up, down, all_around| (上、下、そこらじゅう)が例だ。ブロック引数はブロックの先頭に置かれる。
{ |x,y| x + y }
この例では、|x,y|が引数だ。引数の後に、ちょっとしたコードがある。式 x + yは2つの引数を足し合わせる。
私はパイプ記号はトンネルを表していると思っている。これは変数が滑り降りてくる滑り台のように見える。(x は手足を広げて降りてきているが、y の方はきちっと足を閉じている。) この滑り台はブロックと、その周りの世界の間の、通路の役目を果たす。
変数は、この滑り台(あるいはトンネル)を通してブロックに渡される。
これを読んでいると、例えばオブジェクト指向の説明を動物とかで喩えるのも全然OKと思う。それが喩えであることがしっかり分かって、十分素敵ならば。
追記: 思い出した! ダイヤモンド・エイジ (海外SFノヴェルズ)に出てくるプライマー(若き淑女のための絵入り初等読本)の雰囲気に似ているんだ。