in reply to ||= (poorly documented?)

You're almost right - ||= checks for *truth*, not definedness. Consider the case where $OUTFH{$name} == 0 - that is, it's defined but not true.