
Description
You want a syntax as comfortable as Python and a build that comes out as one small native executable like C — normally you get one or the other.
Nim goes after both: the syntax looks like Python — indentation blocks, type inference, light to write — and the output is a native program with no virtual machine, small enough to hand to anyone and run. Memory management is deterministic, with destructors and move semantics inspired by C++ and Rust, which makes it usable for embedded and hard-realtime work.
The compiler and its output support Windows, Linux, BSD and macOS. The installer is 27 MB and includes the nimble package manager.
Native executables: small, dependency-free binaries that redistribute as they are.
Deterministic memory management: destructors and move semantics, no GC pauses, embedded-friendly.
Zero-overhead abstraction: iterators, compile-time evaluation, generics and templates without a performance tax.
Macro system: manipulate the AST at compile time and extend the language itself.
Multiple backends: compile to C, C++, Objective-C or JavaScript for front and back ends alike.
nimble: a bundled package manager with a large library ecosystem.
Nim goes after both: the syntax looks like Python — indentation blocks, type inference, light to write — and the output is a native program with no virtual machine, small enough to hand to anyone and run. Memory management is deterministic, with destructors and move semantics inspired by C++ and Rust, which makes it usable for embedded and hard-realtime work.
The compiler and its output support Windows, Linux, BSD and macOS. The installer is 27 MB and includes the nimble package manager.
Features
Native executables: small, dependency-free binaries that redistribute as they are.
Deterministic memory management: destructors and move semantics, no GC pauses, embedded-friendly.
Zero-overhead abstraction: iterators, compile-time evaluation, generics and templates without a performance tax.
Macro system: manipulate the AST at compile time and extend the language itself.
Multiple backends: compile to C, C++, Objective-C or JavaScript for front and back ends alike.
nimble: a bundled package manager with a large library ecosystem.
Screenshots
Tags:programming-language
