use Filter::Echo repeat_line => 2; use Lottery::ShortStraw; my $ship = Ship->new(size => 'small'); assert(!$ship->sailed()); my $trip = Trip->new(size => 'long', where => 'Mediterranean Sea'); $ship->stock_for((5+rand()) * 7); # 5..6 weeks $ship->sail($trip); while ($ship->at_sea()) { if ($ship->food() == 0) { log("ERROR: Food supplies depleated\n"); my $winner = short_straw($ship->crew->list()); $ship->crew->remove($winner); log("INFO: " .$winner->name() . " (" . $winner->epitaph() . ") has been eaten\n"); $ship->stock($winner->cook()); } }