Nim v2.2.0 is a continuation of our efforts to improve Nim 2: it contains almost 1000 new commits, bringing improvements to the ORC memory management

Nim versions 2.2.0 and 2.0.10 released

submited by
Style Pass
2024-10-04 00:30:07

Nim v2.2.0 is a continuation of our efforts to improve Nim 2: it contains almost 1000 new commits, bringing improvements to the ORC memory management and to the language and the compiler overall.

Nim v2.0.10 is a patch release aimed at our enterprise users who cannot immediately switch to Nim 2.2, containing 80 commits with bugfixes.

Many long-standing compiler bugs with generics, typedesc and static types have been fixed in this release, effectively making these features stable. In particular, arbitrary expressions for types and values in generic types are now largely functional when they only worked in specific cases before. The release has a focus on bugfixes in general, with many other issues fixed across the board.

Methods now support implementations based on a VTable by using --experimental:vtables. Methods are then confined to the same module where their type has been defined.

An experimental switch --experimental:openSym has been added to deal with issues with symbol captures inside generic routines & templates. For macro authors, this adds a new node kind nnkOpenSym that may need to be handled differently (similar to nnkOpenSymChoice). See the full changelog for details.

Leave a Comment