#!/usr/bin/perl use 5.012; use warnings; { package Example; use fields qw(Zelda Mario Kupa _Example_private); sub new { my Example $self = shift; unless (ref $self) { $self = fields::new($self); $self->{_Example_private} = "Inspection of Example"; } $self->{Zelda} = 'prince'; $self->{Mario} = 'hero'; $self->{Kupa} = 'villan'; return $self; } } package main; my $type = Example->new; print "Zelda is a ", $type->{Zelda}, "\n", "Mario is a ", $type->{Mario}, "\n", "Kupa is a ", $type->{Kupa}, "\n";