Nimony

The road to Nim 3

FAQ

What are Nimony, Nim 3, and Nim 2?


Why plugins on NIF? What can they do?

Much better than in classic Nim’s macro-centric shape:


How does Nimony relate to Nim 3?

Nimony is the compiler implementation driving Nim 3. It is scoped so that, for new (“greenfield”) projects, it can already be the practical target—especially if you care about the NIF plugin pipeline and modern semantics together.

Nim 3 as a full release is intentionally larger: Nimony plus substantial compatibility work so Nim 2 codebases can migrate—libraries, migration aids, and features tuned for existing projects. Nimony stays the focused core (pipeline + language direction); Nim 3 grows around it for everyone else.


What is different from Nim 2?

Architecture: everything revolves around NIF, incremental and parallel compilation, and lowering toward structured NJ—unlocking validators and alternate backends Nim’s classic frontend does not expose cleanly.

Language: Nimony explores Nim 3 designs ahead of the big compat push (see differences.md), including:


Is Nimony a drop-in replacement for Nim 2?

No. Once that happens it will be renamed to Nim 3. Currently it neither tries to compile all Nim 2 unchanged nor replicate every pragmatic shortcut overnight. It shines when you want the NIF-centric toolchain and early Nim 3 semantics and can accept gaps documented under “present” in differences.md.


Where can I read more?