in reply to There be dragons (or, perl5.8's open stringref breaks...)

To change everything you do with IO all at once, check out IO::All. It handles the 'or whatever' anything->anything part of what you're doing.
use IO::All; my $buffer = <<EOS; Here there be dragons! EOS io("foo.txt") < $buffer;
I keep my IO bag-o-tricks offsite.

It should work perfectly the first time! - toma