On Monday, 15 December 2014 at 20:40:29 UTC, evenex wrote:
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.
Is your project open source? If so as a student we will likely
be looking for applications to the 2015 Google Summer of Code, if
D is accepted as a mentoring organization. I would need to
investigate if having a student working on their existing project
would be allowable, but it might be possible. We would still
have to find a mentor for you.
Alternately GSOC 2015 might be your chance to learn a bit more
about compilers!