Acme-Scurvy-Whoreson-BilgeRat
view release on metacpan or search on metacpan
lib/Acme/Scurvy/Whoreson/BilgeRat.pm view on Meta::CPAN
$insult;
}
=head1 PLUGINS
So, on to the most complex part of all this, which thankfully isn't that
complex.
To create a plugin, you create a bog-standard module, whose name is
Acme::Scurvy::Whoreson::BilgeRat::Backend::[your language name]. It should
be a subclass of A::S::W::B. The constructor should return a blessed
object and must be called new(). You then have two options:
=over 4
=item use the built-in insult generator
In this case, you simply need to define a suitable grammar and list of
words to generate insults from. You do this by having new() return
a blessed hashref with the following keys:
=over 4
=item grammars
A reference to a list of strings, each of which is a grammar describing a
valid way of constructing an insult, and may consist of the letters
'A' and 'N'. A grammar is chosen at random when we generate an insult.
For each part of the grammar, a random adjective is chosen for each 'A' and
a random noun is chosen for each 'N'.
lib/Acme/Scurvy/Whoreson/BilgeRat/Backend/pirate.pm view on Meta::CPAN
$VERSION = '1.0';
use warnings;
use strict;
use base 'Acme::Scurvy::Whoreson::BilgeRat';
sub new {
my $class = shift;
bless {
nouns => [
'bilge rat', 'whoreson', 'land-lubber',
'cur', 'swab', 'potvaliant'
],
adjectives => [
'scurvy', 'whoreson', 'lily-livered',
'black-spotted', 'grog-shy', 'cowardly',
'potvaliant'
],
grammars => [qw(
( run in 0.537 second using v1.01-cache-2.11-cpan-de7293f3b23 )