package base_class; my $parameter_config = { mandatory => {type => 'boolean', default => 0, valid => 0}, }; sub valid_parameter { my @param = @_; foreach (@param) { if (defined $parameter_config->{$_}) { $parameter_config->{$_}->{valid} = 1; } else { die "Parameter $_ not known"; } } return 1; } sub new { # and so on }; 1;