Nim Reaches 1.0
Written by Kay Ewbank   
Monday, 30 September 2019

The Nim Team has announced version 1.0 of the language. Nim is a compiled statically typed language focusing on efficiency, readability and flexibility, and the developers say Version 1.0 marks the beginning of a stable base and that future versions of Nim won’t break the code you have written with the current version.

Nim is strongly typed and has first class functions. It is object oriented, but with composition preferred over inheritance. Nim compiles to C as its default, but can be used with different compiler back-ends to produce JavaScript, C++, or Objective-C.


Nim's options include a deferred reference counting garbage collector that is fast, incremental and pauseless; or a soft real-time garbage collector that lets you specify its max pause time. There are also other options for garbage collection. At the moment there are more than 1000 packages available for Nim, and the developers hope and expect more packages to be developed now Nim has reached 1.0.

In a blog post about the new release, Andreas Rumpf, the developer who first invented Nim, said that the main aim has been that Nim should be a small language with a macro system, which should be capable of extending Nim with all the features that the small core is missing. The current compiler plus the parts of the standard library it uses has roughly 140,000 lines of code, runs on many operating systems, and can also compile Nim code to C++ and JavaScript. Rumpf said:

"We want to focus on Nim's tooling, including Nimsuggest (Nim's code completion engine for diverse editors), Nimble (Nim's package manager) and Nimpretty (Nim's source code formatting tool). Personally I regard "incremental recompilation" (IC) the next big milestone for the Nim compiler. IC will further speed up Nim's already fast compile-times and cache the results of macro expansions and other constructs." 



More Information

Nim Language Site

Related Articles

Nim Reaches Release Candidate Stage 

Nim Improves Async  

Nim 0.15



To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on, Twitter, Facebook or Linkedin.


Babel Improves JSX Optimization

There's a minor upgrade to Babel ahead of the 8.0 release expected in the next few months. The current update adds support for TypeScript 3.8 and improves the optimization for JSX transforms.

Fighting Coronavirus At Home With Exascale Power

In the drive to combat the coronavirus, Folding@Home's distributed network is now running at over 1,000,000,000,000,000,000 operations per second, more than five times faster than the world faste [ ... ]

More News





or email your comment to:

Last Updated ( Monday, 30 September 2019 )