Default values and named parameters, thank you! Golang has neglected both of these. Both seemingly rare yet highly productive features to be found in a compiled language.<p>Love the quick compile times and go-like single binary compilation.<p>Case-insensitivity seems very cool for interoperability. Total underappreciated gem.<p>My only hangup is the syntax feels wordy, but it's leagues better compared to Rust or Go in that regard. A bit concerned about the performance cost of using macros to cut down on the wordiness (I would do this).<p>Otherwise great to see a 2.0 and always keeping a close eye on the Nim ecosystem as I would definitely consider adopting it.
As a casual nim user, there's plenty I probably don't appreciate enough in there, but thing I'm most looking forward to are the default values for objects.
This looks great. I’m loving nim for game dev right now. Godot 3.x bindings are working great.<p>There is also a really nice looking binding for unreal engine 5 that is pretty far along
among nim, zig and rust, I'm most likely to learn nim, it has been there for a while and it is solid and has so many good stuff in it, it just needs more 'marketing'. in particular, python really should help its popularity as their syntax are similar and both are very expressive.
Nim’s arc and sink/lent annotations seem a lot simpler than Rust’s owned pointers and region annotations. Has anybody had the opportunity to compare the costs and benefits?
I wonder if anything from this forum thread [1], which is summarized here [2], got implemented.<p>[1] <a href="https://forum.nim-lang.org/t/9132" rel="nofollow">https://forum.nim-lang.org/t/9132</a><p>[2] <a href="https://gist.github.com/j-james/08cd36b7475d461d6291416381ce98ad" rel="nofollow">https://gist.github.com/j-james/08cd36b7475d461d6291416381ce...</a>
In my understanding, Nim at the moment is really a transpiled language, instead of compiled. Transpiled to C, then tooling uses clang or gcc to do compilation from C to target platforms.<p>It is like TypeScript to JS in C/C++ world.<p>Very clever to stand this way on the shoulders of giants, but the amount of moving parts is staggering and horrifying.
Greatly looking forward to experimenting with zero-overhead interop, as that is a pre-requisite for using it as a configuration language for certain types of high-performance servers
I was hoping case sensitivity would be implemented but it seems like it was too controversial. I'm thinking at this point there might be too much resistance.
I am pleased to see a language that focuses on good multithreaded support.<p>I tend to use Java and C for multithreaded problems but having the availability of Nim which looks similar to Python is really promising.
I haven't heard of Nim until now. I've been a Go programmer for years now, and I see a lot of potential. I wonder why Nim hasn't taken off. What's the catch?