#!/usr/bin/perl
use warnings;
use strict;
use feature qw{ say };
sub new {}
{ package MyObj;
sub new { bless { name => $_[1] }, $_[0] }
sub string { join ', ', values %{ $_[0] } }
}
say 'MyObj'->new('obj1')->string;
say new MyObj('obj2')->string;
####
obj1
obj2
##
##
obj1
Undefined subroutine &main::MyObj called at ... line 9.