Hi all,

In another thread, someone ( _mratsim_ ) has spoken of a lot of users using Nim 
for Project Euler. Maybe members of this “project” have done a lot of noise to 
make illusion, but I want to give some more precise data regarding Nim and 
Project Euler.

For those who do not know about this “project”, this is a set of mathematical 
and programming challenges. In some cases, they can be solved by hand, but 
generally, at least starting from problem 100, you have to find a clever 
algorithm to solve them with a computer and brute force is seldom the way to go.

The most used language is now Python with 52323 members (it was not the case, 
several years ago). One of the most successful language to solve the problems 
is PARI/GP, a specialized mathematical language, which has only 117 users. 
Python is well suited to solve the problems, but PARI/GP is probably better for 
some problems. I tried it, but was not very efficient and didn’t persevere.

Nim was unknown of Project Euler until I asked the team to add it to the list 
of registered languages. It was done on 2016 October 17 and since then, Nim has 
got 13 members. Yes, only 13 members! And only two of them have reached level 1 
(with 26 and 32 problems solved), one has reached level 2 (with 64 problems 
solved) and one has reached level 8 (with 215 problems solved).

What does it means? Firstly, that Nim is not popular at all. Compared to its 
direct competitors, it is far behind. For instance, Rust has 697 users, D has 
237 users (which is not very good for a pretty old language). Even Cobol has 36 
users. To be fair, there exist certainly users whose main language is another 
one and who use Nim. And this is more likely to happen for Nim than for Python. 
But there is no statistics on the actual use of language and, anyway, you have 
not to publish your solution, even if it can be done (I have done it each time 
I found that my solution was worth it and could give a good image of Nim 
elegance).

Secondly, it shows that Nim has not found an audience with people fond of 
mathematical and programming challenges. In fact, these are not a target for 
Nim, but Python has been very successful here and it’s not due to mathematical 
modules as _numpy_ as they are never needed to solve the problems. Actually, 
Nim is very well suited to these kind of problems, with only two difficulties. 
First, there is no big integers and you have to use _bignum_. Second, the copy 
semantic needs some care. And, as performance matters a lot, it is more 
comfortable to use Nim than Python (I know, I used Python before using Nim), 
even if _pypy_ may give an impressive performance boost.

Of course, Nim popularity on Project Euler has not any importance. This is only 
an indicator and a biased one as I have said. But I wanted to give some precise 
data to remove some false hopes: no, there is not a large deposit of Nim users 
which are members of Project Euler 😊.

Reply via email to