News

Nim 1.0 releases with improved library, backward compatibility and more

2 min read

Yesterday, the team at Nim announced Nim version 1.0, a general-purpose, compiled programming language that focuses on efficiency, readability and flexibility.

Major changes in Nim 1.0

Backwards compatibility

  • The switch -d:nimBinaryStdFiles has been removed in this release and stdin/stdout/stderr are now the binary files again.
  • In this release, the language definition and compiler are now stricter about gensym’ed symbols in hygienic templates.

Changes made to library

  • The team has removed unicode.Rune16 in this release as the name ‘Rune16 ’ was wrong.
  • In Nim 1.0, encodings.getCurrentEncoding distinguishes between the OS’s encoding and console’s encoding.
  • In this release, json.parseJsonFragments iterator can speedup JSON processing.
  • Oid usage has been enabled in hashtables.
  • std/monotimes module has been added that implements monotonic timestamps.

Compiler

  • In Nim 1.0, the Nim compiler warns about unused module imports. Users can use a top-level {.used.} pragma in the module that can be importable without giving a warning.
  • In this version, the Nim compiler nomore recompiles the Nim project via nim c -r if case no dependent Nim file is changed.

Users seem to be excited about this news and are appreciating the efforts taken by the team. A user commented on HackerNews, “Great! I love this language, so simple and powerful, so fast executables!” 

Another user commented, “I would have never thought to live long enough to see this happening! I started using Nim in 2014, but abandoned it after a few years, frustrated by the instability of the language and what I perceived as a lack of vision. (In 2014, release 1.0 was said to be “behind the corner”.) This release makes me eager to try it again. I remember that the language impressed me a lot: easy to learn, well-thought, and very fast to compile. Congratulations to the team!”

Other interesting news in programming

How Quarkus brings Java into the modern world of enterprise tech

LLVM 9 releases with official RISC-V target support, asm goto, Clang 9, and more

Twitter announces to test ‘Hide Replies’ feature in the US and Japan, after testing it in Canada

Amrata Joshi

Share
Published by
Amrata Joshi

Recent Posts

Top life hacks for prepping for your IT certification exam

I remember deciding to pursue my first IT certification, the CompTIA A+. I had signed…

3 years ago

Learn Transformers for Natural Language Processing with Denis Rothman

Key takeaways The transformer architecture has proved to be revolutionary in outperforming the classical RNN…

3 years ago

Learning Essential Linux Commands for Navigating the Shell Effectively

Once we learn how to deploy an Ubuntu server, how to manage users, and how…

3 years ago

Clean Coding in Python with Mariano Anaya

Key-takeaways:   Clean code isn’t just a nice thing to have or a luxury in software projects; it's a necessity. If we…

3 years ago

Exploring Forms in Angular – types, benefits and differences   

While developing a web application, or setting dynamic pages and meta tags we need to deal with…

3 years ago

Gain Practical Expertise with the Latest Edition of Software Architecture with C# 9 and .NET 5

Software architecture is one of the most discussed topics in the software industry today, and…

3 years ago