in reply to Re^2: Need Help Refactoring Method Calls
in thread Need Help Refactoring Method Calls

I don't think we're dealing with soft references here. The $class is just a string. Perl lets you write barewords for package names as well, but really it's just the package name that you're passing around.

Remember, Foo->new, or $class->new, both translate to new( Foo ) or new( $class ), which is simply passing the string into the new() call.

(I know, I should probably have written Foo::new('Foo'), plus there's some method dispatching logic buried in the ->, but that doesn't detract from the fact.)