in reply to Re: Unobvious Pathological Code Snippets
in thread Unobvious Pathological Code Snippets

But only on fairly modern Perl versions. I think that qw() syntax didn't work in 5.5 and older.

-- Randal L. Schwartz, Perl hacker
Be sure to read my standard disclaimer if this is a reply.

  • Comment on Re^2: Unobvious Pathological Code Snippets

Replies are listed 'Best First'.
Re^3: Unobvious Pathological Code Snippets
by gaal (Parson) on Mar 28, 2006 at 20:04 UTC
    It's not like this is intended behavior :)

    My other favorite is even sicker and more useful. Credit this time to audreyt++ who checked this into pugs with the commit message

    do not mention $@% in the Makefile for portability

    We had a one-liner that was breaking differently on different platforms. Insane desugaring to the rescue!

    - \$(PERL) -MFile::Spec -e "my (undef, \$\$dir, \$\$file) = File +::Spec->splitpath(shift); chdir(\$\$dir); system(q+$hsc2hs $hsc2hs_fl +ags + . \$\$file);" \$< + \$(PERL) -MFile::Spec -e "sub p () { File::Spec->splitpath(ARG +V->[0]) }; chdir((p)[1]); system(q($hsc2hs), qw($hsc2hs_flags), (p)[2 +]);" \$<
    (The thing to note here is ARGV->[n].)