https://insights.stackoverflow.com/survey/2018
^ I'd like to propose this as a discussion topic.
Some brief thoughts:
I hope others will make other observations about that developer survey and how it can relate to Nim.
IMO, what appeal most I think is OOP, although to be honest I think OOP is overrated.
Crystal, which same as Ruby, seems emphasizing OOP.
I use python a lot. nobody needs a REPL. maybe I exaggerate but that's... not very important. and if it exists in a custom repo already https://github.com/AndreiRegiani/INim it's enough. OOP, same, never used it in python because __init__ and self. everywhere are a massive PITA. useless -> full procedural programming is fine.
I'll tell you why I still chose python over nim for my scripting tasks: stackoverflow and google.
examples: https://www.google.com/search?q=python+how+to+filter+a+dictionary versus https://www.google.com/search?q=nim+how+to+filter+a+dictionary
One has an immediate answer in stackoverflow, the other has... garbage. and it's consistent for every query I made for nim up to today. The duper major thing you want to do to attract python programmers has nothing to do with language features, it's about improving how google helps them.
You can't reply to questions that people don't ask, to get more people asking, we need to attract them.
Also you might not need a REPL but you cannot generalize your case with the need of the millions of Python developers in the world.
Besides you have to look beyond devs, scientists are also using Python and for any kind of data munching, a repl and a data visualization package are non-negotiable.
Since vscode doesn't work on all platforms
Wait, what?
https://code.visualstudio.com/Download - you can have it on Windows, Linux, and Mac.
scientists are also using Python and for any kind of data munching, a repl and a data visualization package are non-negotiable.
As a (wannabe) scientist, I can confirm.
Jupyter Notebooks are the tool of trade and they are very very helpful when prototyping. I was pleasantly surprised when I recently tried Julia and I have used both its REPL and IJulia kernel for Notebooks.
If Nim can get REPL, that would be huge!!
As for visualizations - Python's matplotlib is very powerful, but it has an ugly API (because of wanting to please both Matlab crowd and us normal people), and I'm yearning for "simple and sane matplotlib".
I've seen some visualization libraries for Nim, but they seemed very basic - I haven't tried them yet as I'm not sure I could use them (easily) for something more complicated than basic line plots.
To really appeal to Python programmers, Nim would have to support dynamic compilation and a REPL.
Not necessarily. Being a Python programmer doesn't mean you can't do anything other than Python. It means that you're used to The Python Way of doing things, and don't want to deviate from it without good reason. Python programmers routinely optimize in C/C++ (and now Go), and Nim should offer a better alternative. Some aspects of Nim seem very Python-like, but some do not.
Since vscode doesn't work on all platforms
Wait, what?
https://code.visualstudio.com/Download - you can have it on Windows, Linux, and Mac.
Yes, which is what most people use, and that's why I said vscode was the right choice as the default recommended code editor for Nim. (There's some progress with FreeBSD, but still not stable.)
But it doesn't run in restricted environments, Android / Termux, OpenBSD, HaikuOS, etc. Which is why, if vscode is the primary focus, I think vim should be second.
If Nim can get REPL, that would be huge!!
Another random thought: Anaconda now ships with vscode. I wonder if Nim would be a fitting component for that bundle...
It means that you're used to The Python Way of doing things, and don't want to deviate from it without good reason
Developing/testing stuff out interactively is part of the Python Way of doing things for many people, at least in my experience.