http://www.perlmonks.org?node_id=619242


in reply to open to a scalar variable

I'm not very familiar with this technique, but try this instead:
open(MESSAGE, "+>>", \$message) or die "no message $!"; open(WHOM, ">>&=", MESSAGE) or die "no whom $!"; open (WHAT, ">>&=", MESSAGE) or die "no what $!";
If $message is already a reference, try dropping the backslash too.

---
It's all fine and dandy until someone has to look at the code.