http://www.perlmonks.org?node_id=1024180


in reply to Re^8: perl 5.12 BSD portability (CPAN test result)...print
in thread perl 5.12 BSD portability (CPAN test result)...print

So you want me to explains how it's impossible to write the method without the print operator? Well, why don't you try it.

Or are you asking me to explain why they don't do the same thing? Well, consider

>perl -le"$x = 'abc'; print $x;" abc

As you can see, it doesn't call the method $x of class abc. If it was an indirect method call, it would have the following outcome:

>perl -le"$x = 'abc'; $x->print;" Can't locate object method "print" via package "abc" (perhaps you forg +ot to load "abc"?) at -e line 1.