RushCheckを調べてみた

まず始めに、RushCheckすげーーーーー!!!
やりたいことはほとんどRushCheckとそのカスタマイズで出来そうです。ただし、調べたいのはRubyのプログラムじゃなくて、Rubyそのものなのでプロセス間通信するなどの工夫が必要そうです。

使い方の概要はtakkan_mさんのhttp://d.hatena.ne.jp/takkan_m/20071121/1195659681がとても分かりやすかったです。乱数生成のカスタマイズがやりたかったので、ikegamiさんのhttp://rushcheck.rubyforge.org/rushcheck.htmlも読んでみました。
乱数生成のカスタマイズのやり方は次のように理解しました。

  1. string.rbの中のSpecialStringが乱数生成のお手本になっている
  2. arbitraryメソッドをオーバライドすることでカスタマイズを行う
  3. arbitraryメソッドの中でGenオブジェクトを生成する

今のところ、coarbitraryや生成関数なんかのところで躓いています。もう少しがんばると理解できそうな気がします。継続渡しみたいな事をやっているような気がするのですが。
最後に、すばらしいプログラムやドキュメントを書いてくださったikegamiさんとtakkan_mさんに感謝します。