Also consider the
Moose like so:
package Foo;
use Moose;
# define your attributes here ...
my %ATTRIBUTES;
@ATTRIBUTES{ qw( name age sex job) } = ();
# create the accessors here ...
for my $attribute ( keys %ATTRIBUTES ) {
has $attribute => ( is => 'rw' );
}
1;
package main;
# assign values to your attributes ...
my $foo = Foo->new(
name => shift,
age => shift,
sex => shift,
job => shift,
);
# access the attributes here ...
print join (
q{ },
'Hi, I am ',
$foo->age,
'year old',
$foo->name,
'and i work as a',
$foo->job,
) . "\n";
Then execute like so:
perl t.pl nelo 27 male bioinformatician
And you get the following:
Hi, I am 27 year old nelo and i work as a bioinformatician
Smoothie, smoothie, hundre prosent naturlig!