in reply to Re^3: Syntax Perl Version support $c = () = $a =~ /\./g
in thread Syntax Perl Version support $c = () = $a =~ /\./g

tr/// (sometimes spelled y///
Hm, I have been using perl for something like 20 years and even though I have never (as far as I can remember) used tr at all I always knew it existed and what it does.

"tr" must be short for "translate", but today I learn there is even another version of it - you can trade "tr" for "y" - well who would have guessed.

As I am (a bit) interested in perl-arcana:

Does anyone know where this "y" comes from?

Is is a reference to another language who's users larry wanted to feel at home? Can anyone please enlighten me?

Many thanks!

  • Comment on Re^4: Syntax Perl Version support $c = () = $a =~ /\./g

Replies are listed 'Best First'.
Re^5: Syntax Perl Version support $c = () = $a =~ /\./g
by choroba (Cardinal) on Jul 18, 2018 at 00:13 UTC
    > Is is a reference to another language who's users larry wanted to feel at home?

    Exactly. y/// comes from sed.

    ($q=q:Sq=~/;[c](.)(.)/;chr(-||-|5+lengthSq)`"S|oS2"`map{chr |+ord }map{substrSq`S_+|`|}3E|-|`7**2-3:)=~y+S|`+$1,++print+eval$q,q,a,