Warning, ABI breakage from 2.074 to 2.075

Jason King via Digitalmars-d digitalmars-d at puremagic.com
Thu May 25 08:36:38 PDT 2017


Yes it is a lot of work, which I strongly suspect is a big reason why C
still reigns supreme at the systems level — because it does have a stable
ABI which solves a lot of headaches from a systems point of view (obviously
momentum and history are also very big reasons).

If that’s the direction D wants to go in, there’s nothing wrong with that,
but it needs to be setting the correct expectations for users.  Not having
a stable ABI is perfectly fine for application level stuff, but it can be
rather (in some cases extremely) problematic for systems level stuff--that
needs to be understood both by the users and the people working on D (and I
haven’t really seen much recognition of it).

On May 25, 2017 at 10:25:59 AM, Jack Stouffer via Digitalmars-d (
digitalmars-d at puremagic.com) wrote:

On Thursday, 25 May 2017 at 15:02:00 UTC, Jason King wrote:
> That’s a fairly important requirement if it’s supposed to be a
> systems programming language, less so for application focused
> stuff. I would hope it’s at least an eventual goal even if
> it’s not quite the case today.

The reason we don't have ABI compatibility is the same reason
neither Rust or Go does, it's a lot of work for a minority of
users and it stops the language from progressing.

Maybe D will have it eventually due to pressure from large D
using companies, but I highly doubt it.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/digitalmars-d/attachments/20170525/3226bd5a/attachment.html>


More information about the Digitalmars-d mailing list