Nim (programming language)
| Nim | |
|---|---|
The Nim crown logo | |
| Paradigms | Multi-paradigm: compiled, concurrent, procedural, imperative, functional, object-oriented, meta |
| Designed by | Andreas Rumpf |
| Developer | Nim Lang Team |
| First appeared | 2008 |
| Stable release | 2.2.8
/ 23 February 2026 |
| Typing discipline | Static, strong, inferred, structural |
| Scope | Lexical |
| Implementation language | Pascal (2005–2008) Nim (2008–present, self-hosted) |
| Platform | IA-32, x86-64, ARM, Aarch64, RISC-V, PowerPC ... |
| OS | Cross-platform |
| License | MIT License |
| Filename extensions | .nim, .nims, .nimble |
| Website | nim-lang |
| Influenced by | |
| Ada, Modula-3, Lisp, C++, Object Pascal, Python, Oberon, Rust, ParaSail | |
Nim is a general-purpose, multi-paradigm, statically typed, compiled, high-level system programming language. It was designed and developed by a team led by Andreas Rumpf. Nim aims to be "efficient, expressive, and elegant", and supports metaprogramming, functional, message passing, procedural, and object-oriented programming paradigms. Nim includes features such as compile-time code generation, algebraic data types, and a foreign function interface (FFI) for interfacing with C, C++, Objective-C, and JavaScript. It also supports compilation to these same languages as intermediate representations.