There are really occassions when you want the order preserved. Consider the following snippet for XML special character conversion. You can now say:
tie (%escape_symbols, Tie::IxHash,
qq (&) => '&',
qq (\042) => '"',
qq (>) => '>',
qq (<) => '<'
Imagine using these key,value pairs in a regex for substitution. Here the order is vital, as the & signs needs to be replaced first, otherwise your routine might clobber over the & symbols you use for the other replacements!
Neat and simple package, that does exactly what it says it will do.