package Model use Moose; has logger => (is => 'ro', isa => 'Logger', required => 1); package Logger; use Moose;