Nim programming language finally hit 1.0

Ola Fosheim Grøstad ola.fosheim.grostad at
Mon Sep 30 11:02:05 UTC 2019

On Monday, 30 September 2019 at 10:47:14 UTC, JN wrote:
> D1 wasn't simple, but it had a good set of features. It was a 
> language that felt like C#, yet was native and had pointers. 
> Like the best of two worlds of unmanaged and managed. And 
> compared to C++ it looked amazing.

I meant that it was simple compared to C++ and D2. D1 was clearly 
more complex than Pascal! More importantly, one could prototype 
things faster in D1 than in C++98, which made it a promising 

Although, I gave up on the first releases of D1 for pragmatic 
reasons: compiler quality, error messages, code gen, 
underperforming GC, no real alternative to the GC that improves 
on C memory management.

Yet, at that point that could be seen as baby-illnesses and 
developers would come back every once in a while to see if D1 was 
maturing. Unfortunately, the key issues with D1 wasn't fixed and 
new features was added instead of making the foundation really 
solid before adding more features.  As a result D2 become more 
like C++, without being compatible and still having the 

I personally think that the D1 feature set was good enough for 
embedded and simple audio/graphics programming if the rest had 
been polished thoroughly. There was a lot of enthusiasm for D1 
that you don't see for D2, IMHO.

> And yet people now use it for other things they'd use C/C++ 
> for, because the language and ecosystem is good enough.

Yes, but only because hardware has more speed/memory today than 
when those programs were written in C/C++. So, this is what has 
been going on for the past 50 years. Code that was written in 
machine language could be implemented in C, then in Java, then in 
Python or TypeScript. Some software go from C to Go as well, 
true, but mostly because that software didn't really require the 
C feature set.

>> TypeScript, same story.
> Good timing and easy transition story. Most people were 
> frustrated with Javascript for a long time and the ECMAScript 
> committee took ages to add new features such as classes, which 
> people were asking from.

Right, so I guess we have these "parasitic" transitions for both 
C++, Kotlin and TypeScript.

More information about the Digitalmars-d mailing list