This is really cool. I just learned this: you can treat a Perl variable just like a filehandle (read, write, etc).
my $buffer = ""; open my $fh, ">", \$buffer or die $OS_ERROR; print $fh "hello, world\n"; Now $buffer contains “hello, world\n”. You can do the same kinds of things when reading from a variable.
I knew you could do it with IO::Scalar, but while refreshing my memory on that, I stumbled upon this—who needs IO::Scalar anymore?