I originally was writing the module to be object oriented, but do to the sheer speed requirements, I went this direction. As I recall, method calls are an order of magnatude slower than mere subroutine calls. Can anyone verify that? Unless you're planning an exhaustive search of the hand space, there's not much need for that kind of speed though.
Funnily enough, I find that to run 1 hand takes about a second - on a P120 laptop with 24 Meg of RAM running Debian - for either my original implementation or the OO version. The OO version runs at about the same speed as far as I can tell, but probably because the code has been improved significantly over the past few weeks. I imagine that if I stole the routines from my class into the old program's code, it would run faster...but then you can write programs like this:
my $object = Texas -> gameon('8');
$object -> testhand('qh','ts'); # queen hearts, ten spades
$object -> shuffle;
$object -> deal;
$object -> flop;
$object -> turn;
$object -> river;
my @winners = ($object -> whowins);
"What this book tells me is that goose-stepping morons, such as yourself, should read books instead of burning them."
- Dr. Jones Snr, Indiana Jones and the Last Crusade