http://qs1969.pair.com?node_id=604142

#! perl use strict; package Person; sub new { my ($class, $name) = @_; my $self = {}; if ($who eq 'you') { $self = { name => $name, confirm => 'Yeah!', amplitude => 3, } }; bless $self, $class; } sub confirm { my $self = shift; $self->{confirm} || ""; } sub amplitude { my $self = shift; $self->{amplitude} || ""; } sub loves { my ($source, $target) = @_; if ($target->{name} eq 'you') { join(" ", ($target->confirm()) x $target->amplitude()) . "\n"; } } package main; my $she = Person->new(); my $who = Person->new('you'); my @depth = qw/None Somewhat Lots OohBaby/; print $she->loves($who) for @depth; print $who->confirm(), "\n\n";