I thoroughly enjoyed reading this thread. I don't have much experience with Go, but for a quick project, my goto language is typically Python. However, there are definitely areas that Python can be frustrating (where you have to have a loop, parallel processing). I would view D as an ideal language to complement Python's downsides.

As a frequent user of R and the various scientific Python libraries, I found myself agreeing a lot with Russell's comments, particularly that idea of getting D in Jupyter. To me, the infrastructure/community of R or Python is the biggest benefit of those languages. My work is typically at a high enough level that it just doesn't make sense to re-invent the wheel on a lot of things. I don't have the programming knowledge to do something like get armadillo or nlopt or MC Stan to work in D. Tools, like Calypso, that would make it easier to get C++ libraries working would be very important in using D more. I've looked at the source code to a few of those libraries and they look sufficiently complicated that it puts me off the idea of trying to get any of them working myself.

In addition, further development of the ability to call D from R or Python* or Julia (or vice-versa) would also be a positive.

One point that has been discussed thoroughly was learning D from the website. The book is a much better resource than the reference materials on the website for learning D. For instance, if I google d language classes, it takes me to the reference page, which is too confusing for a beginner to the D language. I've learned a lot from it, but it is very hard to make much headway without having read the books section on classes first. Improving tutorials and examples might go a long way. Moreover, quality of tutorials and examples would also be very helpful in terms of getting C/C++ libraries to work and calling code in other languages. The Interfacing to C page in the reference materials is written at a sufficiently high level that I'm still not confident I understand it well enough to use it myself.

*When I google pyd python d language, it takes me to an old link at dsource.org that requires two jumps before hitting a github page with the more recent version of the project (new release 3 days ago!). However, that page doesn't really give you much information about how to use it or anything else.

Reply via email to