in reply to Warning is right or not ?

Given that get_IATA seems to to return the same thing in list and scalar context, in this case I'd expect them to be equivalent, but $hash{'AirIATA'} is less obscure.

perl -E'sub Monkey::do{say$_,for@_,do{($monkey=[caller(0)]->[3])=~s{::}{ }and$monkey}}"Monkey say"->Monkey::do'