in reply to resolved: Shorter than ternary?

To allow defaults and/or enforce mandatory values in a hashref:
my %args = ( key1 => 'specified 1', key3 => 'THIS SPACE FOR RENT' ); my $hr = { key1 => 'default 1', key2 => 'default 2', %args, key3 => 'enforced 3' }; ## now: ## $hr->{key1} == 'specified 1' ## $hr->{key2} == 'default 2' ## $hr->{key3} == 'enforced 3'
In English: when building a hash, key => value pairs override the previous value for the given key. And tossing a %hash (or @array, if it looks like a hash) in the mix will just expand itself to a list of key, value, key, value...