in reply to Time to buy some pills
Surely you meant:sub new { my ($class, $self) = @_; unless (&work($self) || &sleep($self)) { $self->smoke; $self->cancer_probablity += rand(0.001); } bless ($self, undef); }
This reads better to me:sub new { my ($class, $self) = @_; unless ($self->work() || $self->sleep()) { $self->smoke; $self->cancer_probablity += rand(0.001); } bless ($self, undef); }
My auto-biography in perl poetry would be a lot longer:
package Jarich; use strict; sub new { my ($class) = @_; bless ({}, $class); } sub freeload { my @needs = qw/money clothes shoes money books computers games bedding sleep time food/; print "Mum/Dad I need more ", $needs[rand(@needs)], "\n"; } sub annoy_parents { my @actions = ("hit sister", "kick dog", "whine", "whine", "whine", "need more", "beg", "borrow", "steal", "go out with a dag"); print $actions[rand(@actions)], "\n"; print $actions[rand(@actions)], "\n"; } sub live { my $self = shift; my @actions = ("drink", "cycle", "play", "paint", "eat"); # fun stuff on weekends. if(rand(7) <= 2) { print $actions[rand(@actions)], " "; $self->{cancer_probablity} += rand(0.0001); } else { $self->work(); } $self->sleep(); } sub work { print "bored bored bored bored bored: ke-ching! Money++"; } sub sleep { print "ZZZZZzzzzzzzzzzzzzzzzzzz\n"; } sub die { my $self = shift; if(rand(100) < 2) { return 1; } elsif($self->{cancer_probability} > 100) { return 1; } return 0; } #======================================================== package Main; my $jarich = new Jarich; my $age = 0; until ($age++ > 18) { $jarich->freeload() && $jarich->annoy_parents(); } until ($jarich->die()) { $jarich->live(); $age++; } print "RIP jarich. 1978-", 1978+$age, "\n";
jarich
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Re: Time to buy some pills
by frankus (Priest) on Jun 26, 2002 at 09:45 UTC |