Rubyのブロックってもしかして、
「公開関数が2つ以上関数を引数にとるなんてことめったにねぇよ」
って発想が根底にある?