What were some of your biggest breakthroughs while learning D?

Jesse Phillips Jesse.K.Phillips+D at gmail.com
Tue Jul 13 19:25:23 UTC 2021


On Tuesday, 6 July 2021 at 20:53:12 UTC, Dylan Graham wrote:
> [Inspiration from this r/C_Programming 
> post](https://www.reddit.com/r/C_Programming/comments/oeoq82/what_were_some_of_your_biggest_breakthroughs/)
>
> What's something you learnt or realised, a habit you developed, 
> something you read or project you worked on that helped 
> accelerate your understanding and/or productivity in D?
>
> For example, mixin templates finally clicking and you realise 
> how to use them in your code base. Stuff like that.

I grew my skills with D, so there was not so much a jump in 
having new productivity. However there definitely are a few 
things that greatly influence how I design.

* Ranges

The sales pitch is mostly lost on me because if you look at Java 
or C# their interface is remarkably close to solving the same 
problem.

But their is one major difference, it is so much easier to build 
a Range in D rather than build the boilerplate in the other 
languages.

But it gets more important, std.algorithms really demonstrates 
how important it is to have your algorithms be separated from 
storage.

* CTFE (all the meta)

You don't need this, C# has runtime reflection but there is 
something about having the ability to build out everything at 
Compile Time. D needs improvement here, but that doesn't mean 
other languages are nicer to work with.

* Dynamic Typing

I think the biggest benefit D provided me was that I never fell 
into the dynamic/duct typing trap.

D types feel lightweight, you can change things, and most 
importantly the compiler yells at you for being inconsistent.


More information about the Digitalmars-d mailing list