package Amplifier; sub new { my $pkg = shift; my $self = [1]; bless $self,$pkg; return $self; } sub in { my $self = shift; $self->[0] *= shift; } sub out { my $self = shift; return($self->[0]); } sub pulse { my $self = shift; $self->[0] = 1; } 'end Amplifier';