the IO::String manpage, which is quite similar but which was designed more-recently and with an IO::Handle-like interface in mind, so you can mix OO- and native- filehandle usage without using tied(). Note: if anyone can make IO::Scalar do that without breaking the regression tests, I'm all ears.