What I wondered about was why my original version gave that error.
In looking at the source for List::Compare I see that the first thing the new() method does is shift the class name from @_. Since I only provided two arguments the first one got shifted and the error is produced since there is only one remaining. I suppose when you use the correct '->' syntax to call new() it puts a copy of the class name into @_ as the first item. I see in the link you provided, Method Invocation, that this is correct.
The syntax I used accidentally is for calling a package subroutine so it accessed new() directly.
In reply to Re^4: List::Compare asking for two references
by Lotus1
in thread List::Compare asking for two references
by Lotus1
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |