use strict; use warnings; package car; sub new { my $class = shift; my $self = { name => shift, price => shift, speed => 0 }; print "Object car being created:\n"; print "Name: $self->{name}\n"; print "price: $self->{price}\n\n"; bless $self, $class; return $self; } sub speed_up{ my $self = shift; my $acc = shift; $self->{speed} += $acc; return $self->{speed}; } sub slow_down{ my $self = shift; my $acc = shift; $self->{speed} -= $acc; return $self->{speed}; } 1; #### use strict; use warnings; use car; my $speed; my $auto = new car("Opel Vectra",50000); $speed = $auto->speed_up(25); print "Speed is: $speed km\n"; $speed = $auto->speed_up(10); print "Speed is: $speed km\n"; $speed = $auto->slow_down(20); print "Speed is: $speed km\n";