How do you use D?
Michael via Digitalmars-d
digitalmars-d at puremagic.com
Mon Jul 31 02:31:30 PDT 2017
On Friday, 28 July 2017 at 14:58:01 UTC, Ali wrote:
> How do you use D?
> In work, (key projects or smaller side projects)
I did my undergraduate in CS where I picked up Python, Java and a
little bit of C/C++, but Java was my most familiar language. When
I started my PhD in an Engineering Maths department, I picked up
Andrei's book on D as I had come across the language several
times earlier but never had a good excuse to pick it up properly.
My supervisor is more of a mathematician so I did not have any
dependencies or limitations in the tools I chose to use for
research. For the first year of my PhD I built models in Java
with Python for scripting on the side. I was incredibly
disappointed with the performance in Java, and having been
learning D on the side during that year, I decided to rewrite it
using D. I essentially chose D for the one reason many people do
NOT choose D; I wanted a GC-language that offered a decent level
of control like C/C++ and was much nicer to write than Java, but
with the convenience of not having to concern myself too much
with memory management. I was happy to tune for efficiency, but
did not want memory management to interrupt my workflow when
writing a new model. D was perfect for this.
> in your side project, (github, links please)
I've been lazy with side projects since I am always trying to
work on my maths and writing skills which are pretty lacking
given my choice of degree.
> Did you introduce D to your work place? How? What challenges
> did you face?
I've tried to inform people of the merits of D but in this
department, we're heavily tied to Matlab for teaching. When I
started, they switched up the undergrad courses and started
teaching Python as an alternative to Matlab alongside C/Java, but
there's still a lot of reliance on Matlab. I'd like to see them
chuck Java and teach C/D but we'll see. At university, there's a
lot of difficulty in balancing the necessities (C for embedded
systems/robotics and Matlab for modelling).
> What is you D setup at work, which compiler, which IDE?
I've been a long-time Sublime Text user, using DMD (rdmd is a
life saver) and that's about it. I'm interested in VS Code with
the dlang extension though.
> And any other fun facts you may want to share :)
It makes me sad to see so many people disgruntled by the mere
presence of a garbage collector. I like it a lot and while I am
completely on board with moving toward making it more optional, I
am glad it's there and would welcome speed improvements. I think
there's a balance to be struck between allowing programmers to
forget about the low-level memory management when writing
programs and tuning memory management when optimising for
performance.
More information about the Digitalmars-d
mailing list