Also, does an empty list always evaluate to false?
I am delighted at finding myself inconsistent! I feel passionately that "returns an array" is bad documentation,
but "returns an empty list" doesn't make me blink twice,
even though from a language-semantics point of view, a routine in scalar context cannnot
return an empty list, and return ()
will in fact be an undef
result (and hence false).
Do any others find their brains working this way? Or would everyone else consider "returns an array" and "returns an empty list" equally good or bad?