Jump to page: 1 25  
Page
Thread overview
DIP 1028 "Make @safe the Default" is dead
May 29, 2020
Walter Bright
May 29, 2020
Bruce Carneal
May 29, 2020
Bruce Carneal
May 30, 2020
James Lu
May 29, 2020
Mathias LANG
May 29, 2020
Johannes Loher
May 29, 2020
tsbockman
May 29, 2020
Timon Gehr
May 29, 2020
Walter Bright
May 29, 2020
Adam D. Ruppe
May 30, 2020
Walter Bright
May 30, 2020
Bruce Carneal
May 29, 2020
Arine
May 30, 2020
Nick Treleaven
May 30, 2020
Paul Backus
May 30, 2020
Adam D. Ruppe
May 30, 2020
Bruce Carneal
Jun 10, 2020
Jacob Shtokolov
May 31, 2020
Walter Bright
May 31, 2020
Avrina
May 29, 2020
rikki cattermole
May 29, 2020
solidstate1991
May 30, 2020
Walter Bright
May 29, 2020
Ali Çehreli
May 30, 2020
Walter Bright
May 29, 2020
jmh530
May 29, 2020
Douglas
May 30, 2020
Iain Buclaw
May 29, 2020
Meta
May 29, 2020
Jonathan M Davis
May 29, 2020
SashaGreat
May 29, 2020
Faux Amis
May 29, 2020
Bruce Carneal
May 29, 2020
Paul Backus
May 29, 2020
Faux Amis
May 29, 2020
Walter Bright
May 29, 2020
Bastiaan Veelo
May 30, 2020
Walter Bright
May 30, 2020
bpr
May 29, 2020
Johannes T
May 29, 2020
neikeq
May 29, 2020
Jonathan M Davis
May 30, 2020
Iain Buclaw
May 28, 2020
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.
May 29, 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.

Thanks Walter.

I hope that Steve's recent auto-inference ideas might yet help us achieve your, widely shared, goal of expanding @safe coverage/utility.



May 29, 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 for listening to the community's feedback.
May 29, 2020
Am 29.05.20 um 06:53 schrieb Walter Bright:
> 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 understand that this comes with a lot of frustration (and maybe bitterness and resignation). But I really appreciate your decision to respect the community's opinion. It is the right thing to do. You have my biggest respect.
May 29, 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.

Great. Thanks for accepting the community's feedback.

On the extern(C) issue, I wasn't convinced by your concerns about programmers taking the path of least syntactical resistance, BUT if that would really have been a serious problem, I think just keeping @system as default really is the best solution:

Ideally @safe would be brainlessly easy to use, however currently it can't truly do its job without some level of understanding and effort on the part of the user. So, better to just leave the whole system off by default, than try to force it on people who can't or won't make the effort to use it correctly.

(I say this even though I try to use @safe as much as possible in my own code.)
May 29, 2020
On Friday, 29 May 2020 at 05:08:44 UTC, Bruce Carneal wrote:
> 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.
>
> Thanks Walter.
>
> I hope that Steve's recent auto-inference ideas might yet help us achieve your, widely shared, goal of expanding @safe coverage/utility.

Steve calls it "inferred-by-default", not "auto-inference".  It looks like a great way to bring a ton-load of code in to the @safe tent with low effort, but that's just the beginning.





May 29, 2020
On 29.05.20 06:53, Walter Bright wrote:
> The subject says it all. 

Thanks! For the record, this would have been my preference:

fix @safe, @safe by default >
  fix @safe, @system by default >
    don't fix @safe, @system by default >
      don't fix @safe, @safe by default

While this retraction improves matters in the short term, I think there is still potential for improvement. In particular, `@safe` is still broken for function prototypes.

> I recommending adding `safe:` as the first line in all your project modules

It would be great if `@safe:` did not affect declarations that would otherwise infer annotations.
May 29, 2020
Thank you Walter.

May 29, 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.

Can we get a compiler flag that will enable safe by default for people who might want it?
May 29, 2020
On 5/28/20 9:53 PM, 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! Which meme did it? :o)

Ali

« First   ‹ Prev
1 2 3 4 5