Why is D unpopular?
Bruce Carneal
bcarneal at gmail.com
Wed May 25 17:23:11 UTC 2022
On Wednesday, 25 May 2022 at 16:17:06 UTC, Siarhei Siamashka
wrote:
> On Wednesday, 25 May 2022 at 13:34:35 UTC, Alexandru Ermicioi
> wrote:
>> We should not have release switch as it is now due to those
>> security holes mentioned.
>
> That's merely the Adam's claim. He is trying to very
> aggressively "save" me from some non-existing problems without
> realizing that I'm just not using D language in the same way as
> he does. He is too busy being engaged in some sort of
> shadowboxing against himself and is not paying attention to my
> explanations.
Adam has "saved" many dlang programmers with his pragmatic and
real-world-safety oriented advice. He is the most prolific, and
one of the most respected, dlang contributors in the discord
threads. His book,
https://www.amazon.com/D-Cookbook-Adam-D-Ruppe/dp/1783287217 ,
was one of the sources I referenced when onboarding. His library
work, https://github.com/adamdruppe/arsd , is very well regarded.
>
> To sum it up. The '-release' switch doesn't disable bounds
> checking in @safe parts of the code. So we are fine as long as
> the majority of code in a project is marked as @safe. Rather
> than removing or changing the '-release' switch, I think that a
> much better idea is to migrate more code and libraries to @safe
> and my understanding is that D language is moving in that
> direction. Maybe Walter can confirm or deny this?
D gives you a lot of options wrt @safe ty. My personal
preference, probably shared by some others, is that the defaults
should favor correctness and convenience with all else being
opt-in.
I'm quite concerned with ultimate performance (real time video
processing) and yet have found it easy to employ D in a very
safe/convenient form for almost all my code (@safe,
immutable/const, pure, gc, throw) while using dcompute, __vector,
@trusted, .ptr and the like when I need to be on the metal.
>
> Regarding the name of this topic. If the '-release' switch
> removal idea gains traction, it will be a strong reason for me
> to quit. Performance parity with C++ without unreasonable extra
> efforts is very high on my priority list. If extra efforts are
> unavoidable and D loses its rapid development appeal, then
> there's always Rust as a more mainstream alternative.
The -release switch activates a combination of finer grain
controls. You can put together whatever combination you wish in
your build scripts. I don't know how a command line fixable
inconvenience compares to those that you'd experience if you
decamp to the Rust world but if you do I'd like to hear your take
on it.
More information about the Digitalmars-d
mailing list