URIモジュールってのは凄く便利なのでみんな重宝してるんだけどアレってスカラリファレンスのblessなんだよね。 いつも思うのが何でハッシュリファレンスにしなかったのかなーってこと。 まぁURIモジュール自体、かなり汎用的なモジュールなのでスカラの方がデータ構造をあれこれ考えなくても良い分、楽だったのかもしれない。 とはいえ実際問題、URIモジュールの使用用途ってURI::httpがその殆どを占めてると思うのでちょっくら適当にHashベースのURI::httpを実装してみた。もちろん全部じゃなくていくつかのメソッドだけね。 package URI::Hash::http; use Moose; use URI(); use URI::Escape(); use overload ( fallback => 1, '""' => sub { shift->as_string }, '=='