Lost a new commercial user this week :(

evenex via Digitalmars-d digitalmars-d at puremagic.com
Mon Dec 15 12:40:28 PST 2014


This is just my $0.02, not to ask for anything specific, but to 
add to the cross-section of perspectives on this topic, to whom 
it may concern:

A colleague and I are writing a framework for building and 
managing complex simulations and chose to implement in D for the 
modeling power that the template system brings, which allows us 
to make an expressive and fairly performant API that is also 
flexible and easily refactored thanks to static assert and 
unittest...

But we keep getting hamstrung by bugs; hitting compiler segfaults 
during template metaprogramming is a very common occurrence, and 
sometimes UFCS fails. We continue to make progress but lose a lot 
of time finding workarounds for apparently valid but noncompiling 
code. We are hoping that with the increased interest in D lately, 
the implementation will stabilize, but we are nervous about the 
long-term prospects.

This is a risk we knowingly undertake in exchange for the 
aforementioned advantages. A lot of cool stuff is possible with D 
that we can't do in other languages but I constantly work with 
the fear that we'll stumble upon some compiler bug in 6 months 
time that we can't find a way around. (I originally tried to 
write this system in C++ and I dread the idea of returning to it.)

One of our target use-cases is gaming, and to this end we hope 
that the difficulty we've had in getting D environments working 
in Windows will be alleviated soon so that we can confidently 
target that platform.

As typical college students (I am a senior, partner is recent 
grad) we can't afford to put up bounties or contract anyone but 
we put up bug reports when we can (this will be easier when dub 
dustmite functionality is fully implemented) and can poke around 
at dmd in gdb in the hopes of getting some useful info to the 
contributors (I have very little knowledge of compilers, though I 
have been gleaning details from running dmd in gdb. I'm not yet 
at the point where I can attempt my own fixes, though I hold out 
hope that some things will click soon and I can make a more 
active contribution effort).

We're willing to invest in D, in whatever way we can, and hope to 
someday (sooner rather than later) add ourselves to the list of D 
success stories.

But, our success depends on a stable, multi-platform 
implementation. So we are open to ways on how we might improve D 
more proactively. Right now we are developing on dmd git head 
(for the latest fixes) but would like to transition to ldc (for 
the optimization) as we solidify our design.


More information about the Digitalmars-d mailing list