The D programming language seem to be slowly but steadily picking up (The D book out for a year now, and discussions increasing on different forums).
I've been planning to pick up a language like C or C++ to be able to write high performance bioinformatics software, but after I found D, that seems a much more promising choice to me, having all the modern features like (optional) Garbage collector, clean productive syntax, (so-claimed) strong concurrency features etc, while still being fast and allow optional close-to-hardware coding.
Thus, it would be interesting to know what bioinformatics software is out there already, written in D (to use as examples and helpful starting points), except from the only one I found so far, the CnD (copynumber) software from Sanger institute.
Do you know of other software, or are you writing something on your own? Even smallish script-like tools could be helpful to know about, if you're sharing as open source. And, if you wrote the software yourself, what is your impressions of the usefulness of D for bioinformatics? (Of course, authors of CnD are free to share their impressions! :) ).
(Not sure how to choose the right answer on this one ... but there's always the voting of course ^^ ...)
lh3 has covered the most important issues but as the author of cnd I will comment. The language itself is great and fixes most of the issues I have with C++ (ugly template syntax, not being context free) and adds many nice features. The reason I switched back to C++ for my next project is due to the tools. DMD could only generate 32-bit code when I was using D so I had to use GDC, which was infrequently updated at the time (I think both of these issues have been improved). Also, I would be forced to make binary releases of my software as installing a D compiler is asking a lot from the users.
If we have a SeqAn library in D, or if someone can come up with a BioD and get it approved by OBF, D will quickly become popular.
Thanks for sharing these insights! I'm kind of hoping that there will soon be a break-through, where the DDT Eclipse plugin project [1] gets fully functional etc :) ... but I realize we're not there yet, so I gess I'll keep myself to smaller test projects for the time being ... [1] http://code.google.com/a/eclipselabs.org/p/ddt/
(... actually being into Java already, with some plugins for Bioclipse [1], and suppose I'll stay with Java as main language for the foreseeable future, but would be nice to develop skills in some more closer-to-the-iron and non-oracle-hijacked alternative language too ...) [1] http://bioclipse.net
If you would like to explore a new compiled programming language while are loath to the notorious segfault, you may consider Go. Go for now is less efficient than D in my experience, but I do not see a particular reason why it cannot be as fast as D in future. Go is backed up by google and a few truly genius (well, the creator of D is a genius, too) and in a better shape (open and no such thing as a tango fork).
Thanks again for the input (will give this the mark, as being the most elaborate and informative answer) ... I might have a look at both D and Go, before making any definitive decision ...
Now D2 programming come to Fedora 16, easy for install. ldc support x86_64 x86 arm (need test user for last one) and can do dynamic library. I agree D do not have many bioinformatic project but if anybody start one how you want go forward ?
I agree that support for D is improving, especially the compilers. It is good that distros are starting to include D compilers. When I started my current project nearly 2 years ago, I did not feel D was mature enough to use for a multi-year project. Maybe it is different now. I think projects like dscience are a good idea and will help encourage people to write bioinformatics applications in D.
@jts: Many thanks for the input! I think what you say is quite much in line with my general impression that there we're not really too far from having a very compelling language in D, for many kind of projects (esp. those written from scratch), especially if tools such as DDT gets to the critical point of usefulness. If only the community grow a bit more, I suppose it's a matter of time, before we'll be there ... :) (at least I do hope so).