in reply to Re^3: Module provides both of functional interface and object-oriented one
in thread Module provides both of functional interface and object-oriented one

I agree with you. According to your idea, users don't need to pass a reference subroutines on every call:
use Blosxom::Header; # procedural interface my $value = Blosxom::Header->get($key); my $bool = Blosxom::Header->exists($key); Blosxom::Header->set($key => $value); Blosxom::Header->remove($key); # OO interface my $h = Blosxom::Header->new(); my $value = $h->get($key); my $bool = $h->exists($key); $h->set($key => $value); $h->remove($key);
Nobody uses my module except for me :) But I belive this module should exist.

Update:

I noticed that it's not necessary to implement OO interface any more in this case.
  • Comment on Re^4: Module provides both of functional interface and object-oriented one
  • Download Code