in reply to Take *that*, Deparse!

? Deparse seems to handle that with aplomb.

C:\test>perl -MO=Deparse,p #!/usr/bin/perl sub ::'&'{bless$_[0]}sub ::1:{print $_[0]->(),$"}sub ';'{print $_[0]-> (),$/}::{print'Just '}->()->(::{another})->(::{Perl});$q->(::{hacker}) ^Z sub main:: (&) { bless $_[0]; } sub 1 { print $_[0]->(), $"; } sub (;) { print $_[0]->(), $/; } main::(sub { print 'Just '; } )->()->(main::(sub { 'another'; } ))->(main::(sub { 'Perl'; } )); &$q(main::(sub { 'hacker'; } )); - syntax OK

Seems perfectly clear to me:)


Okay you lot, get your wings on the left, halos on the right. It's one size fits all, and "No!", you can't have a different color.
Pick up your cloud down the end and "Yes" if you get allocated a grey one they are a bit damp under foot, but someone has to get them.
Get used to the wings fast cos its an 8 hour day...unless the Govenor calls for a cyclone or hurricane, in which case 16 hour shifts are mandatory.
Just be grateful that you arrived just as the tornado season finished. Them buggers are real work.

Replies are listed 'Best First'.
Re: Re: Take *that*, Deparse!
by Felonious (Chaplain) on Nov 28, 2002 at 05:18 UTC
    D'oh! You're right... Deparse handled that "fairly ok" (though what it produced is not valid perl) under perl 5.6.1, which I failed to test;)

    Under 5.8.0, the part that produces:

    sub main:: (&) { bless $_[0]; }
    suffers the same fate as the below (which should work in both):
    #!/usr/bin/perl sub :::::: { print "Just another Perl Hacker\n"; } &::::::;
    /Me hopes that one works;)


    The early worm gets the bird.