in reply to
Magical Auto-Decrement
Nice try, but of course, the issue re. the boundary cases still holds,
so the following
--"a" gives "z"
--"a00" gives "z99"
--"0" gives "9"
--"aa00" gives "zz99"
give results which aren't reversible.
Update: (following comment below)
Yes, you should eat the left-char on underflow, and
--"a" => undef and --0 => undef.
I was going to make a point about keeping items
in the right order for a sort, but of course zz++ == aaa
which screws up that point. Hmmm...
--
Brovnik