Earlier quoted context omitted.
Pitch: Like Python, but faster and multicore. At least it's the reason I tried it once. It was not a bad experience.
The problem with that for me is "like Python" implies a HUGE collection of libraries I can use to connect to pretty much anything. With Python I can just search "python " and find popular, well-maintained, libraries to do . I can't do that with Nim. Most of the stuff I find seems to be 5-9 years old and have no updates since.
Ask HN: Why did Nim not catch on like Rust did?
41–50 of 139 posts
Re: Ask HN: Why did Nim not catch on like Rust did?
#42When Rust was able to get rid of a class of memory bugs, undefined behavior, concurrency bugs without a garbage collector, it achieved a breakthrough. You can now write JS or Java VM in a language that doesn't have buffer overflows, dangling pointers and all kinds of other nasty security vulnerabilities. Nim doesn't GUARANTEE memory safety, so it's basically... better Pascal? It's an iterative improvement that nobody…
There is more to software engineering than just memory safety.
Re: Ask HN: Why did Nim not catch on like Rust did?
#43When Rust was able to get rid of a class of memory bugs, undefined behavior, concurrency bugs without a garbage collector, it achieved a breakthrough. You can now write JS or Java VM in a language that doesn't have buffer overflows, dangling pointers and all kinds of other nasty security vulnerabilities. Nim doesn't GUARANTEE memory safety, so it's basically... better Pascal? It's an iterative improvement that nobody…
There is more to software engineering than just memory safety.
Does a C++ developer have reasons to switch to Rust
and
Does a C++ developer have reasons to switch to Nim
Re: Ask HN: Why did Nim not catch on like Rust did?
#44Earlier quoted context omitted.
How about the motto: “Efficient, Expressive, Elegant”?
I don't think that is particularly good either. It is too vauge. Just subjective adjectives. Nothing concrete. Not to mention, everyone aims for those traits. It is not unique enough.
Re: Ask HN: Why did Nim not catch on like Rust did?
#45When Rust was able to get rid of a class of memory bugs, undefined behavior, concurrency bugs without a garbage collector, it achieved a breakthrough. You can now write JS or Java VM in a language that doesn't have buffer overflows, dangling pointers and all kinds of other nasty security vulnerabilities. Nim doesn't GUARANTEE memory safety, so it's basically... better Pascal? It's an iterative improvement that nobody…
There is more to software engineering than just memory safety.
* Cargo for managing dependencies and a sensible module system
* Option/Result based error handling without using null
* Zero (runtime) cost abstractions like iterators and async
Re: Ask HN: Why did Nim not catch on like Rust did?
#46Indentation sensitivity is ugly. With a bracket, i can easily read the scopes, block of codes. With indentation, it's harder.
Re: Ask HN: Why did Nim not catch on like Rust did?
#47Indentation sensitivity is ugly. With a bracket, i can easily read the scopes, block of codes. With indentation, it's harder.
So... you don't indent your bracket blocks?
- Step 1: Find open bracket
- Step 2: Find closed bracket
With indentation, the algorithm now becomes:
- Step 1: Find something which seems to open a scope.
- Step 2: Scan all indentation level until it's done.
The difference is huge here.
Re: Ask HN: Why did Nim not catch on like Rust did?
#48In my opinion, Nim's ability to be compiled to C, C++, and JS make materials for new users too defragmented (this also almost occur with Clojure, IMO, though JVM/JS/and now Dart targeting make sense with their various niches). And all the tricky parts like Orc/Arc/no GC.
But I really love the Python + Pascal syntax, to be honest. Maybe even more than Lisps.
I really wish I could buy the new Nim book but it's kinda hard as a 3rd worlder to import dead-tree books. Unfortunate.
Re: Ask HN: Why did Nim not catch on like Rust did?
#49Earlier quoted context omitted.
There is more to software engineering than just memory safety.
Sure, but does nim have any breakthrough innovations in any of those other areas?
Do I need memory safety? If yes, Rust is the best choice.
But other times I need quick iteration times (Python, or maybe Nim) or immutability, or painless concurrency (Elixir), or meta-programming (Lisp & derivatives). I don't spend any time to ask myself whether a language is innovative, when I got deadlines and results to deliver.
Re: Ask HN: Why did Nim not catch on like Rust did?
#50Then look at how the community was built (e.g. Mozilla / conferences / forums etc.)
I've only recently started writing rust (after years of C#, Java, JavaScript, Ruby, Python, and a variety of other languages), and once I got past the basics of understanding borrow checker issues I love it as a language. Personally (for reasons unknown) I prefer brackets over indentation based languages, so Nim is a pretty hard sell there.