"be consistent" PerlMonks

### Re: My Story

by Petruchio (Vicar)
 on Jan 14, 2001 at 21:03 UTC ( #51770=note: print w/replies, xml ) Need Help??

in reply to My Story

Here are some methods for you.

```sub birthday{
my \$self = shift;
\$self->{age}++;
if (\$self->{age} == 12){
\$self->{old_happiness} = \$self->{happiness};
\$self->{happiness}     = -1;
if (UNIVERSAL::isa(\$self,'GEEK')){
\$self->{happiness}  -= 3;
}
}
if (\$self->{age} == 19){
\$self->{happiness}    = \$self->{old_happiness};
if (UNIVERSAL::isa(\$self,'GEEK')){
\$self->{happiness} += 3;
}
}
if (\$self->{age} > 70){
\$self->yell(@{\$kids{damned}});
\$self->complain(@{\$politicians{damned}});
}
}

sub experiment{
my \$self = shift;
my \$idea = shift;
my \$result;
unless (\$self->{tried}->{\$idea}){
\$result = \$idea->(\$self);
print "Cool, I didn't die\n";
\$self->{happiness}++;
if (\$result > 0){
print "\$idea produced positive result.\n";
\$self->{things_to_do_again}->{\$idea} = 'YES';
\$self->{happiness}++;
}
else{
print "Note to self: what the hell were you thinking ";
print "when you decided to \$idea?\n";
\$self->{things_to_do_again}->{\$idea} = 'NO';
}
\$self->{tried}->{\$idea}++;
}
return \$result;
}
[download]```

Note that trying new things is condusive to happiness, and that you can't do this unless you use Tie::RefHash; This is where most non-geeks go wrong. Truth is, most of them would be miserable if sex() weren't considerably simpler to implement.

Also note that calling experiment() with the wrong parameters can forestall further calls to birthday(). It is suggested, therefore, that you use caution;

Log In?
 Username: Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://51770]
help
Chatterbox?
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others perusing the Monastery: (5)
As of 2018-02-18 05:48 GMT
Sections?
Information?
Find Nodes?
Leftovers?
Voting Booth?
When it is dark outside I am happiest to see ...

Results (250 votes). Check out past polls.

Notices?