my %hash; @hash{ 'A', 'B', 'C' } = ( 1, 2, 3 ); #### package InOut; use strict; use warnings; my %instances; sub new { my( $class, @params ) = @_; my $obj = bless {}, $class; $instances{$obj} = { params => [ @params ]}; return $obj; } sub getparam { my ( $self, $index ) = @_; return $instances{$self}{params}[$index]; } 1; package main; use strict; use warnings; my $thingy = InOut->new(qw/ Bart Homer Marge Maggie Lisa / ); print $thingy->getparam( 2 ), "\n";