The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Acme::Magpie - steals shiny things

SYNOPSIS

use Acme::Magpie;
# oh no, some of the shiny methods have gone away

no Acme::Magpie;
# phew, they're back now

DESCRIPTION

The Magpie is a bird known for stealing shiny things to build its nest from, Acme::Magpie attempts to be a software emulation of this behaviour.

When invoked Acme::Magpie scans the symbol tables of your program and stores attractive (shiny) methods in the %Acme::Magpie::Nest hash.

Shinyness is determined by the return value of the shiny method this can be redefined by child classes:

package Acme::Magpie::l33t;
use strict;
use base qw(Acme::Magpie);

sub shiny {
    local ($_) = $_[1] =~ /.*::(.*)/;
    return tr/[0-9]// > tr/[a-z][A-Z]//;
}
1;
__END__

This magpie considers identifiers with more numbers than letters as shiny. The code is installed with this distribution.

BUGS

Acme::Magpie will cause most of the code you use it in to die because the subroutines it tries to execute just won't be there. This is considered a feature.

AUTHOR

Richard Clamp <richardc@unixbeard.net>, original idea by Tom Hukins

COPYRIGHT

Copyright (C) 2002 Richard Clamp.
All Rights Reserved.

This module is free software; you can redistribute it
and/or modify it under the same terms as Perl itself.