D is dead (was: Dicebot on leaving D: It is anarchy driven development in all its glory.)
Dominikus Dittes Scherkl
dominikus at scherkl.de
Fri Aug 24 22:44:31 UTC 2018
On Friday, 24 August 2018 at 22:16:25 UTC, Jonathan M Davis wrote:
> On Friday, August 24, 2018 7:46:57 AM MDT Mike Franklin via
> Digitalmars-d wrote:
>> On Friday, 24 August 2018 at 13:21:25 UTC, Jonathan M Davis
>> wrote:
>> > I think that you're crazy.
>>
>> No, I just see more potential in D than you do.
>
> To be clear, I'm not calling you crazy in general. I'm calling
> the idea of bypassing libc to call syscalls directly under any
> kind of normal circumstances crazy. There is tons of work to be
> done around here to improve D, and IMHO, reimplementing OS
> functions just because they're written in C is a total waste of
> time and an invitation for bugs - in addition to making the
> druntime code that much less portable, since it bypasses the
> API layer that was standardized for POSIX systems. It's the
> kind of thing that's going to cause us way more work, more
> bugs, and make us that much less compatible with existing
> libraries. And for what? To _maybe_ get slightly better
> performance (which you probably won't get)? I honestly think
> that trying to bypass libc to talk to the kernel directly is
> actively worse than just using libc much as it would be great
> if we somehow lived in a world where every library we used was
> written in D. But the reality of the matter is that there is a
> _lot_ out there already written in C where it simply makes no
> sense to try to replace it. We're always going to need to
> interoperate with C unless we somehow convince all of the C
> developers to at least switch to -betterC (which obviously
> isn't happening).
>
> - Jonathan M Davis
You're underestimating the benefits. It's not just to be
eventually slightly faster. It makes @safe versions possible,
this in turn avoids a lot of @trusted calls, so reduces review
effort. It allows also to develop own kernels (for maybe new
hardware) without needing a c-toolchain an it makes D more self
contained. There are certainly more advantages. And if you don't
like it, the c stuff remains there for you to use.
More information about the Digitalmars-d
mailing list