#!/usr/local/bin/perl -w { package Record; use fields qw(firstname lastname address town zip); sub new { my $this = shift->fields::new; %$this = @_; return $this; } } my Record $data = new Record( firstname => 'Bob', lastname => 'Smith', address => '1234 Main St', town => 'AnyTown', zip => 20500); use Data::Dumper; print Dumper $data; print "His name is $data->{firstname} $data->{lastname}\n"; print "His name is $data->[1] $data->[2]\n";