has 'weather' => (is => 'ro', isa => 'MyApp::WH1091Moose', required => 1,default => sub {Myapp::WH1091Moose->new() } ); #### caught error: Undefined subroutine &Device::WH1091::getweather called at /usr/local/share/perl5/Device/WH1091.pm line 71.