On 7 January 2012 10:40, Adam Wilson <flyboynw@gmail.com> wrote:
On Fri, 06 Jan 2012 23:31:52 -0800, torhu <no@spam.invalid> wrote:

On 06.01.2012 21:02, Adam Wilson wrote:

COFF is an absolute requirements when working on Windows, yet DMD doesn't
support it. Everything, every programming interface, every application
running on x64 Windows is built with COFF, the default output of every
other compiler on Windows is COFF, everyone else programming on Windows is
expecting COFF.
Windows represents the largest OS install base in the world; and yet,
Windows based D programmers are told that they have to dig up extremely
esoteric tools from the darkest, smelliest, most cobwebbed corners of the
Internet, just to be able to interact with the the rest of the Windows
world.

This situation is simply unacceptable.

It's not that bad.  Most libraries can be compiled to DLL files, in fact that's often the default.  DMD/Optlink can use DLL files created by other tool chains just fine. If an import library in the correct format is not available, just use implib or coffimplib to create one.  No problem.

First of all, what if I want to use a DLL lib file that was created by DMD in VC++? Oh right, can't do that either. I know there are converter tools available, but all of them are closed source, and what if the creator decides one day that he is done? I'm stuck with no source and potential bugs.
Second, as a professional, the idea that somehow the advice to download Esoteric Tool X from Shady FTP Server Y is acceptable is completely beyond me. No professional compiler implementation would DARE give that advice to it's clients, they'd laugh and find another compiler that did what they want. The concept of kludging together a build toolchain is uniquely open source. DMD will never get buy-in from large groups of professionals without natively supporting the things those professionals expect.

Let me state that again for clarity. If DMD does not natively support the standard outputs that professionals have come to expect and demand, then DMD will forever remain a hobby toy.

Professionals don't have time to kludge together a [fragile] build toolchain and support it, they have work to do. Given the choice for a large project right now, i'd have to say VC++ wins on Windows every time, it's got COFF, excellent tooling and libraries, and x64 support; but mostly, it works with everything Windows. DMD does not. Until DMD does, professionals cannot seriously consider DMD.

Hear, hear!