ake::Any::Mo - make Any::Mo
This module helps you make your own version of Any::Mo, with a name like maybe "Monkey::Mo", or whatever else you like. You'll need to have Mo.pm and its friends (Mo/is.pm, Mo/build.pm, etc) somewhere.
Use it from the command line, as shown in the synopsis. After the equals sign, ake::Any::Mo expects a comma-delimited list of arguments. In order, these are:
the name of the module to create. (Default: "My::Any::Mo".)
the path where Mo.pm can be found. (Default: performs "require Mo" to figure it out.)
a URI identifying the authority making the module. Pseudo-URIs along the lines of 'cpan:TOBYINK' are often used. (Default: as per $ake::Any::Mo::AUTHORITY.)
a version number for the module. (Default: as per $ake::Any::Mo::VERSION.)
Any remaining arguments are a list of Mo plugins to include.
Mo is a nice, dependency-free Moose-lite. If you
use Mo then you're introducing exactly one dependency: Mo itself. (Though Mo comes with a mo-inline script to remove this dependency.)
Any::Mo gives you Moose if Moose is already loaded, but falls back to Mo. Any::Mo actually bundles a version of Mo, so if you
use Any::Mo, you are still only introducing one non-core dependency: Any::Mo itself.
But wouldn't it be nice to have the power of Any::Mo without introducing a dependency on Any::Mo? Well, you can - you can use ake::Any::Mo to create a custom version of Any::Mo (which of course includes a version of Mo), then bundle your custom Any::Mo with your code.