Nim



Website: nim-lang.org

Designed by: Andreas Rumpf

Programming paradigms: Multi-paradigm — compiled, concurrent, procedural, imperative, functional, object-oriented, meta


Nim is a general-purpose, multi-paradigm, statically typed, compiled high-level systems programming language, designed and developed by a team around Andreas Rumpf.

Nim is designed to be “efficient, expressive, and elegant”, supporting metaprogramming, functional, message passing, procedural, and object-oriented programming styles by providing several features such as compile time code generation, algebraic data types, a foreign function interface (FFI) with C, C++, Objective-C, and JavaScript, and supporting compiling to those same languages as intermediate representations.