Anonymous Monk has asked for the wisdom of the Perl Monks concerning the following question:

Howto create a Moose baseclass/superclass/contract? Moose equivalent of Module::Pluggable? Favorite way to create base/super class?

The use case is some app that does something with different backends

package iAmInYourIsa; sub dothis { croak "subclass must implement dothis" } ...

so one backend is

package iAmInYourIsa::CGI; use parent 'iAmInYourIsa'; use CGI; sub dothis { ... my $q = CGI->new ... $q->param ... }

another is iAmInYourIsa::Tk and so on and so forth?

I could cobble something using Module::Pluggable, but the verbiage is all wrong :)