Nim
An efficient, expressive, statically typed compiled language.
Nim compiles to C (and optionally to JavaScript or to native via the LLVM-based clang) and combines Python-like indented syntax with strong static typing, type inference, metaprogramming via hygienic macros, and zero-cost abstractions. The result is a language that is comfortable for scripting and capable of systems programming, with a self-bootstrapped compiler that is itself written in Nim.
Andreas Rumpf started Nim in 2008 (initially called Nimrod). It hit 1.0 in 2019, which stabilised the language semantics. The package manager (nimble), build system, and language server are all written in Nim, which makes the project unusually self-contained.
Nim has a small but enthusiastic user base. The Status decentralised chat platform is the highest-profile commercial Nim user, and several command-line and game-development projects use it for performance-with-good-ergonomics work. Among the "post-Rust" generation of systems languages it is one of the more mature.
Install
curl https://nim-lang.org/choosenim/init.sh -sSf | sh Or: Arch: sudo pacman -S nim macOS: brew install nim
Authors
- Andreas Rumpf (creator)
- Nim contributors