#!/usr/bin/perl package Foo; sub new { my $class = shift; return bless { @_ }, $class; } # ... package Bar; sub new { my $class = shift; return bless { @_ }, $class; } # ... package main; # the actual script my $foo = Foo->new( myattr => "foo" ); # create an obj use Data::Dumper; print Dumper $foo; __END__ $VAR1 = bless( { 'myattr' => 'foo' }, 'Foo' );