in reply to List::Compare asking for two references

Try List::Compare->new.

Replies are listed 'Best First'.
Re^2: List::Compare asking for two references
by Lotus1 (Vicar) on Feb 18, 2021 at 18:49 UTC

    That works. Thank you!

      Sure thing. But do you understand why it works? Check out perlootut and perlobj.

        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.