in reply to FileHandle emulation

IO::String does something like what you want. It only has partial support for handle operations, for instance exotic $/ variants don't work.

IO::Stringy is an interesting alternative which looks a bit more modern.

After Compline,
Zaxo