DIP 1028 "Make @safe the Default" is dead
jmh530
john.michael.hall at gmail.com
Fri May 29 11:04:00 UTC 2020
On Friday, 29 May 2020 at 04:53:07 UTC, Walter Bright wrote:
> The subject says it all.
>
> If you care about memory safety, I recommending adding `safe:`
> as the first line in all your project modules, and annotate
> individual functions otherwise as necessary. For modules with C
> declarations, do as you think best.
>
> For everyone else, carry on as before.
Thank you Walter. I am sure this was not an easy decision, and I
respect how you have handled the response.
I think one important takeaway from this should be that people
were not opposed to "memory safety by default." Instead, they
were opposed to "@safe in its current implementation by default."
In terms of changing the behavior of @safe, I think it would be
useful to review comments on this old bug report [1] about
changing @safe to a whitelist instead of blacklist. I think if
@safe was a whitelist instead of a blacklist, the concerns about
@safe's current implementation would be diminished.
I also think some of the comments on the thread discussing the
DIP procedure are also relevant for improving the DIP process
going forward. In particular, creating a small DIP committee,
perhaps consisting of the Language Maintainers, the principal
maintainers of LDC and GDC, and maybe one person elected by the
community (hopefully Andrei if he has time to volunteer), that
would discuss each DIP before voting might help make a more
robust decision. If the current process is continued, then we
could add a rule that the DIP author may not participate in final
DIP votes and he should be replaced by an alternate. I'm not sure
how important that would be with a committee-based approach, but
worth considering.
[1] https://issues.dlang.org/show_bug.cgi?id=12941
More information about the Digitalmars-d-announce
mailing list