Why we chose not to use D for our Linux project

Sean Kelly sean at invisibleduck.org
Mon May 19 10:56:48 PDT 2008


== Quote from Bill Lear (rael at zopyra.com)'s article
> Sadly, we have given up on using D for our Linux project, despite my hopes and favorable overall impression of the D language.  I thought I would
share briefly our reasons in hopes that the information is useful to those in the D community.
> We are writing a distributed media publishing system that uses a relational database to store media programming schedules and other related
information.  We need a language that has a library that provides easy database access (something along the lines of Perl's DBI, for example), CGI
programming support, access to system-level routines, reasonable performance, YAML support, and other features.
> We came to a quick conclusion that D wasn't going to work, as the DBI code proffered on dsource has apparently been abandoned and does not
come close to compiling with the current dmd (1.028 or 1.029) compiler.  We had a laborious run-around trying to figure out if DBI requires Tango
or Phobos, wrestled with the "bud" make-ish system, and finally gave up in disgust --- it just wasn't going to work without serious effort.
> We settled on ruby, after spending a short time installing the necessary components, coding up test routines, and deciding it fit the bill.
> The sad thing is that D looks very promising, but the future for it does not, I'm afraid, unless the D community can produce a coherent set of tools
that are used in the real world and that can be installed without developers being burdened with trying to figure out arcane install problems,
incompatibility issues, and the like.  With ruby, we had just a few easy commands to run to install DBI and it was up and running, and we have had no
problems with it since.
> I told our CTO that maybe in a year or two D would have a stable set of libraries and support systems in place that could be considered, but we'll
be long past choosing D at that point.
> I think some serious attention needs to be focused on this, rather than the minutiae of the latest cool language feature.  I have been following D
for some years now, hoping it would all come together --- and I hope it does, soon --- as it feels D is being left in the dust.

I agree with your comment on tools and libraries in general, but D does already have a solid
install/update/build tool in DSSS/rebuild.  With it, installing supported packages is as simple
as "dsss net install blah", which I believe is roughly equivalent to ruby gems or whatever you
used there instead.  Regarding DB support, I think some branch of DDBI may actually build
with the current version of D, but you're right that it doesn't receive a lot of attention.
Unfortunately, D is still very much a language for self-starters, and the overarching focus
on newer and more features rather than building a solid base for development probably
doesn't help things either.  Overall, the trend seems to be a churn of new users rather than
a growing group of serious professionals--likely for these reasons.  That said, there are
more than a few professional developers which have found a development environment
which suits them--from my experience it tends to be DMD/Linux and Tango with either
makefiles or DSSS for building and GDB with the demangling patch for debugging.


Sean



More information about the Digitalmars-d mailing list