in reply to
Can't use string ("main::STDOUT") as a symbol ref while "strict refs" in use
select returns currently selected filehandle. Until you will select other filehandle, it's main::STDOUT. Because it's bareword filehandle, it's returned as string. When printing to it, print notices it's string and strict 'refs' is enabled, so it dies.
Instead, you can try workaround of using IO::Handle method. With Perl older than 5.14, you have to use IO::Handle - it's optional is Perl 5.14.