default dies if not given a coderef

This is mostly to avoid mistakenly doing
has attr => (default => 0);

and sillently getting $foo->attr as undef instead.