Nim programming language finally hit 1.0

Ola Fosheim Grøstad ola.fosheim.grostad at
Fri Sep 27 18:16:27 UTC 2019

On Friday, 27 September 2019 at 17:37:14 UTC, Russel Winder wrote:
> It isn't that Python/C++ is the best choice per se, it is that 
> libraries got developed using the Python/C++ combination, and 
> that people working in the fields are introduced to these 
> libraries as the de facto standard for their subject. I cannot 
> see  Nim, D, Chapel, etc. even denting this traction of Python 
> and C++, though at least Nim looks derivative of Python.

Right, it is very difficult to make this move as more and more 
simulation models or libraries are implemented in a specific 
language. Although it does happen, Fortran is not as important as 
it used to be, at least that is my impression. But it clearly 
takes decades, not years, to make this move.

> Something similar is happening in data science, machine 
> learning, and artificial intelligence: Python has become the de 
> facto standard because someone chose to write all the libraries 
> people needed in Python, NumPy, or C++.


> The use of Matlab was set because universities were given free 
> licences, I suspect as a loss leader to ensure people knew 
> Matlab and expected to use it when they moved to the world of 
> work. However, over the 2007 to 2015 period it was clear Matlab 
> were charging too much and that Python was the obvious place to 
> move to. I ran many workshops over 2010 to 2015 retraining 
> Matlab programmers as Python programmers. Actually they were 
> electrical engineers not programmers who just wanted to solve 
> problems. Matlab had the tools, but was too expensive, they 
> discovered Python also had the tools, and so they switched.

Interesting that electrical engineers found that switch 
worthwhile, but I still think that if you primarily do 
experiments with linear algebra or signal processing then Matlab 
is more convenient to use interactively than Python.

Yet, if you already know Python then maybe  that isn't enough to 
also learn Matlab. So I think that over time, as Python becomes 
the primary language in education, you also get that effect. Not 
because Python is better than the alternative, but that learning 
the alternative is less attractive than solving the problem right 
away (so they prefer writing more code in Python than learning 
Matlab and write more terse code).

> I suspect there is beginning to be back pressure from the world 
> of work to universities against Matlab and for Python, but this 
> is speculation on my part.

I don't know, but I suspect as people that grew up with Python 
enter leadership position then the question becomes "Is there a 
good reason for not using Python for this?".

> university curriculum made for much better programmers. So 
> Python for everything in universities is a very bad idea as 
> well, at least for CS students – electrical engineering,

Yeah, but if you always start out with Python then students can 
switch field after the first two years with less resistance. Then 
you probably learn Arduino or C in a low level programming 
course, Scheme in a functional programming course, Prolog in a 
logic course, and Java .

That's not too bad, but the real problem is that some students 
only do mandatory programming exercises and do not program on 
their own, and that institutions do not want too many students to 
fail. If you then add into the mix that the CS department want 
many students (as the money follow the student) they end up 
accepting low quality submissions and thus the students don't get 
the training through effort that they need.

The desire to write your own programs and try out other languages 
is probably necessary to become a decent programmer. Not sure 
what can be done with that. In the 80s low level programming was 
a hobby, maybe 1 out of 10 males experimented with this on their 
8-bit computers... We don't have these numbers today, I think?

More information about the Digitalmars-d mailing list