WikiR は dRuby サーバーと dRuby サーバーに接続する CGI で構成されています。これは、咳プロダクツではよくあるパターンです。咳フリークならみんな知っています。
ここはテストによくでてくるポイントですよね。
なお、Ruby 2.0 では Module#prepend があるので、以下のようにすればクラス側で明示的に super を呼ばなくてもすみます。
このコードレビューでprependの用例が勉強できるとは思いませんでした。勉強になります。
と、MonitorMixin の説明をしてきましたが、私は MonitorMixin が好きではありません。
咳さんお気に入りのMonitorMixinがけちょんけちょんですが、たしかMonitorMixinのsynchronizeがMonitorのsynchronizeより優れている点としてロックの入れ子に対応している(日本語版93ページ)という点があったと思うのですが、MonitorMixinを「Monitorのより良いバージョン」としてMixinせず独立して使うことも可能なのでしょうか?
他にも src と省略しないで source にしたいとか
dRuby本を訳していた時に編集の人から「aryはなんだ。arrayにすべきじゃないのか」という突っ込みがあったのを思い出します。
このメソッドにはそれよりも気になることがあります。それは、例外を握りつぶしているという事です。
例外を握りつぶすのはdRubyのソースコード内でもよく見るパターンです。 dRubyのような魔法がちりばめられたコードのなかであれがあるとデバッグが大変だろうなと思います。