Providing defaults
has 'foo' => (
is => 'ro',
default => 42,
);
say Class->new->foo; # 42
say Class->new(foo => 123)->foo; # 123
has 'foo' => (
is => 'ro',
default => 42,
);
say Class->new->foo; # 42
say Class->new(foo => 123)->foo; # 123