On Wednesday, 18 April 2018 at 08:24:14 UTC, FeepingCreature wrote:
If nobody objects, I'll make a PR to deprecate it.

+1. Nullable has received some improvements lately, it would be great if `get` was no longer implicit. For new code, it is trivial to write `.get` to convert to the original type. For old code, deprecation is a good solution. (Permanent deprecation can solve the problem of breaking code in the longer term).

There is an argument for making `get` *require* a fallback value rather than a default `.init` argument, to make the conversion completely explicit, but this is perhaps a change too far considering how lax we currently are. A third way would be to require a fallback argument only when the original type doesn't have a good invalid value like null. At least null dereference, if triggered, will be detected immediately upon execution. An unexpected zero-value might go undetected for a long time.

Reply via email to