And now we no longer have obfuscated code: this is
just the regular "tr" operator, working as advertised.
The "c" tells "tr" to complement the SEARCHLIST; the
SEARCHLIST is an empty string, so the complement is
any character--so we're searching for any character.
The "s" tells "tr" to "squish" the string--
If the /s modifier is specified, sequences of characters
that were transliterated to the same character are
squashed down to a single instance of the character.
The final thing going on is that if the REPLACEMENTLIST
is empty (as it is here), the SEARCHLIST is replicated
(so the SEARCHLIST and REPLACEMENTLIST are the same).
So we're translating every character (the complement
of an empty SEARCHLIST) into itself, *unless* there's
a sequence of characters that translate to the same
character, in which case we "squish" the sequence down
to one instance of that character.
So, I hope this helps. Try to figure out the rest
yourself, using some test programs and perlman:perlop.
And if I've made any mistakes, someone please correct