3 ms·
If Nim continues at the same pace, it may displace Python. It is "as fun as" Python to start with, it has the knobs that made python popular in many niches. It
by beagle3 10y ago
If Nim continues at the same pace, it may displace Python.
It is "as fun as" Python to start with, it has the knobs that made python popular in many niches. It has official JS, C, C++ and Objective-C backends (with perfectly compatible and natively fast FFI in each case). It compiles down to small, efficient executables like Go does.
It has some of the best metaprogramming facilities (in a non-lisp language), which makes it possible to introduce "source native" notation for e.g. XML and JSON.
It also has an LLVM backend, though it is not yet complete.
Nim is a big and complicated language, but so is Python. The size of a language itself is not a problem, as Python shows. Unlike C++, you don't have to be familiar with every small metaclass/descriptor/base-class-lookup issue to use the language. I believe Nim shares Python's "it's ok to ignore the details until you need them" feature.
- dwringer 10y agoPerhaps it would be more informative to speculate on the reasons why Python would be displaced by any new language, rather than why any given language might displace Python.
- squarefoot 10y agoBecause albeit it got a lot better with time, it's still a lot slower than C for medium to big projects. Displace is probably not the right term as Python like many others has its strengths, I would rather think of using the right tool for the job, and to me for medium to big projects when performance is important, Python doesn't seem the best choice.
- bsder 10y ago> If Nim continues at the same pace, it may displace Python. Um, no. Look at how long it took Python to displace Perl. And Perl was actively shooting itself in the brain for years or that probably wouldn't have happened. Python is far more embedded in certain areas now than Perl ever was.
- flukus 10y agoEven python (3) is struggling to replace python (2).
- rspeer 10y agoI can't imagine a language even starting to displace Python without a good REPL. Not just a hacked-together "lol does this work" REPL, something you can rely on, and preferably something you can use as a Jupyter backend.