when i try to read out key/value pairs, i got "undef" on values for which comparison function returned -1.
This statement doesn't make sense. A comparison function is passed
two keys. Yet when you read out key/value pairs, you get one key at a time. You can't look at a key and say "Ah, for this key, the comparison function returned -1". You can look at a
pair of keys and say "For this pair of keys,
in this order, the comparison function returned -1." But as it stands, your statement makes no sense.
--
@/=map{[/./g]}qw/.h_nJ Xapou cets krht ele_ r_ra/;
map{y/X_/\n /;print}map{pop@$_}@/for@/