I’m currently working through the excellent book Nim in Action by Dominik Picheta.
Nim looks like a promising and fresh language:
Nim is a statically typed compiled systems programming language. It combines successful concepts from mature languages like Python, Ada and Modula.
What I like about Nim is that it looks like Python, but it compiles to a dependency-free executable (C, C++, or JavaScript).
The language is fairly small, but it allows for writing macros (meta-programming) like a Lisp.
Nim has an optional garbage collector, thus you don’t have to manage memory yourself.
Thus, the initial learning curve is not as high as in Rust. In Rust the standard library is quite extensive, and you have to learn how to manage memory with the borrow checker.
The book, Nim in Action, shines by providing a practical guide to the language. It assumes that you know the basics of programming, but still manages to be accessible to inexperienced programmers.
You learn the language by creating small, but intriguing projects like a command line chat application or a Twitter clone.
I recommend taking a look at Nim. I enjoy learning it.
Links
- Nim in Action (Manning)
- Nim language