in reply to __PACKAGE__ and method reference

Do you want people to be able to subclass Very::Long::Name? In that case, hardcoding the subroutine reference won't allow them to override foo(). This will:

return $self->bar( $self->can( 'foo' ) );

(Also change to the two-arg form of bless if subclassability is important.)