What are (were) the most difficult parts of D?
Adam D Ruppe
destructionator at gmail.com
Fri May 13 18:29:54 UTC 2022
On Friday, 13 May 2022 at 18:23:58 UTC, H. S. Teoh wrote:
> On Thu, May 12, 2022 at 11:45:47PM +0000, Guillaume Piolat via
>> It's a problem because it goes from solving "no accidental
>> race condition" and you get "people forget to add shared or
>> __gshared and their shared library silently fail" situation.
>> You could have none of that with explicit TLS.
>
> Valid point.
Yeah, I used to be pro-TLS by default, then got bit by it several
times and moved to the fence, and now I'm anti.
Data races aren't actually prevented by it (maybe forcing you to
specify shared or tls would at least get you think about it
though) and lots of things mysteriously fail if you forget about
it.
You can lock the variable and everything and it still null cuz it
was tls the whole time. Oops.
This a case where I think forcing explitness would be better than
either default, but failing that, tls by default is the more-bad
choice.
More information about the Digitalmars-d-learn
mailing list