Lyle wrote:
> max psykx wrote:
>
>> whats perl inspiring you to do at the moment?
>>
>
> Read my previous posts :)
>
Just remembered I mentioned B::Deparse at some point. It can be
interesting to get a better idea of how Perl really sees things once
it's parsed your code.
Sample script:-
use B::Deparse;
sub samplesub {
for ( my $i = 1; $i < 101; $i++ ) {
print "$i, ";
print 'Half way, ' if ( $i == 50 );
}#for
print "Bang!\n\n";
}#sub
for ( my $level = 1; $level <= 9; $level++ ) {
my $deparse = B::Deparse->new("-x$level");
my $body = $deparse->coderef2text(\&samplesub);
print "Level $level\n";
print $body;
print "\n" x 2;
}#for
Sample output (minus levels that gave the same output):-
Level 1
{
for (my $i = 1; $i < 101; ++$i) {
print "$i, ";
print 'Half way, ' if $i == 50;
}
print "Bang!\n\n";
}
Level 3
{
while ($i < 101) {
print "$i, ";
print 'Half way, ' if $i == 50;
}
continue {
++$i
}
print "Bang!\n\n";
}
Level 7
{
while ($i < 101) {
print "$i, ";
$i == 50 and print 'Half way, ';
}
continue {
++$i
}
print "Bang!\n\n";
}
_______________________________________________
BristolBathPM mailing list
[email protected]
http://mailman.bristolbath.org/mailman/listinfo/bristolbathpm