in reply to re-opening DATA, printing any character

now for the first, this isn't exactly re-opening it, but you get the same effect:
#!/usr/bin/perl # record where the __END__ starts my $pos = tell(DATA); # do stuff with it while(<DATA>) { print ; } # seek back to the top seek(DATA,$pos,0); # do some more stuff with it. while(<DATA>) { print ; } __END__ some text some more text yet some more text
course, depending on how much data there is, you could just
my @data = <DATA>; foreach (@data) { print; } foreach (@data) { print; }

/\/\averick