in reply to keys %::

what are the lowercase qw/stderr stdin stdout/ for
They're deprecated aliases for STDERR etc.
What do the _<-ones mean
They're for the debugger; see perldebguts.pod for the gory details
precisely when and where the destructor is used
No idea, but the destructor itself is a NOOP.

Dave.