in reply to map efficiency

Turn on warnings and you'll probably realize that trailing commas are silently ignored and that => is a "fat comma".

With warnings, your last example complains "Odd number of elements in hash assignment" and doesn't do what you thought.

It is a "bug" that map is too slow when more than one item is output per input item. This bug will be fixed when perl 5.6.1 or perl 5.8 becomes available.

        - tye (but my friends call me "Tye")