in reply to ||= (poorly documented?)

You are almost correct in understanding how it works. Whatever is on the right side of the ||= operator is used if the left side evaluates to undef, like you said; however, it is also used if the left evaluates to false.

my $string; $string ||= "Oh noes! Your variable was undef or false!";

I believe //, on the other hand, only tests for whether the left side is defined (but not for truthiness).