package Baseclass;
# common attributes and methods
sub use_values {
croak ("Abstract class");
}
package Subclass_1;
use base 'Baseclass';
my @values = (...);
sub use_values { ... }
package Subclass_2;
use base 'Baseclass';
my @values = (...);
sub use_values { ... }
####
package Subclass_1;
use base 'Baseclass';
sub use_values {
my @values = (...);
...
}
##
##
package Subclass_1;
use base 'Baseclass';
{
my @values = (...);
sub use_values { ... }
}