$x = Dog->new( -size => 'small', # ok, this would be -aggresiveness => 'low', # quoted by =>, and -hair_style => 'curly', # ... -hair_lenght => 'short', ) package Dog; sub new { my %args = @_; my $size = $args{-size}; # ... these would be my $age = $args{-age}; # quoted by the {}, but ... my %hair_properties = @args{ -hair_style, # ... these would need -hair_lenght, # quoting without -hair_colour, # unary-'-'. }; ... }