in reply to Re^2: Split does not behave like a subroutine
in thread Split does not behave like a subroutine

Sorry, IMHO are you over-complicating.

Your definition of LIST is too narrow , it's not only used for function(LIST) and "comma" is not the only list constructor.

You can find LIST in docs for other cases too.

For me LIST means a piece of code which ...

nothing more.

for instance map {BLOCK} LIST ...

only the last two list constructors allow "list interpolation/flattening", since it's a feature of the "comma operator" which has two variants , and '=>'.

correction: since it's a feature of the naked "list context" w/o operator, what comma does is just propagating the list context down the tree, hence @a=@b,@c is just @a = (@b),(@c)

FWIW: I use "interpolation" primarily for vars in strings like in print "$a $b";

But glossary lists both variants

Cheers Rolf
(addicted to the Perl Programming Language :)
Wikisyntax for the Monastery