On 4/19/2017 3:58 AM, Laeeth Isharc wrote:
I think not enough has been written on D's plasticity - Andrei and Walter talk
about it in passing a couple of times.  But I have the impression that it's
maybe quite important for merits of D's real world commercial value. Compare
using refactoring  tools with not really needing them to same extent.

It's a really hard idea to get across.

Back when I wrote in C and C++, usually the first algorithm and data structure I picked persisted through to the end of life of the program. I'd optimize the hell out of it, but I didn't change it.

But with D, I find I redo the algorithms and data structures, trying to find one that works better. The Warp project is a particular example of that.

In C/C++, changing the algorithm/data structure meant rewriting the program. D makes it easy to change that without major rewrites, so it's much more likely that I'll be willing to change it.

Other explanations for this are:

1. I'm better at encapsulating algorithms and data structures

2. D's unit test feature makes me much more confident in making changes.

I can't help but think it is more than that. In D my programs just go together faster, and have fewer bugs. The code tends to look more like a solution to the problem rather than a mass of ->::<> and other syntax.

But these things are hard to get across in a presentation, so instead I talk about features, and the audience goes "well I can do that in C++/Rust/Go" even if it is awkward or requires a 3rd party tool or whatever.

Reply via email to