* KES <kes-kes@yandex.ua> [2015-11-27T13:37:07] > The doc says that Perl really do this: @x = scalar(@y) || @z; > *But it is ugly to get scalar result when we want the list* ( the behaviour of || in this case is ugly a bit ) > There is no any reason to not return list ( @y ) in this case (except for backward compatibility. but in any case > we may not allow this feature by default in future versions of perl) There is already utility in the current behavior, if you expect it. What you describe could also have been a useful behavior, and maybe if we had godlike awareness we could know whether it would be more useful and less surprising. As it is, though, the backward compatibility is a huge issue, and breaking it, even if guarded by a pragma, does not seem warranted. Code would become much harder to skim code because one would need much more context for understanding very basic things like "what context does this operator produce in this context," and across call boundaries. This is not going to get changed. -- rjbsThread Previous