spurperl,
I used named arguments for
Tie::Hash::Sorted for a very specific reason. Being optional, there is no way to indicate that you have the middle argument unless they are named. Starting out with only two options, I likely could have handled this by examining the arguments and reordering them as necessary, but I wanted to be able to account for future changes without breaking backwards compatability.