Efficient and expressive programming.

Nim is a systems and applications programming language. Statically typed and compiled, it provides unparalleled performance in an elegant package.

  • High-performance garbage-collected language
  • Compiles to C, C++ or JavaScript
  • Produces dependency-free binaries
  • Runs on Windows, macOS, Linux, and more
# Compute average line length
var
  sum = 0
  count = 0

for line in stdin.lines:
  sum += line.len
  count += 1

echo("Average line length: ",
     if count > 0: sum / count else: 0)

Recent articles

A guide to documenting, profiling and debugging Nim code

This guide discusses some of the useful tools for documenting, profiling and debugging Nim code.

Nim Community Survey 2017 Results

We have recently closed the 2017 Nim Community Survey. I am happy to say that we have received exactly 603 responses, huge thanks go to the people that took the time to respond. We’re incredibly thankful for this very valuable feedback.

All articles

Featured projects

See more

Looking for the GitHub repository?

The Nim compiler and tools are all written in Nim and licensed under the MIT license, with most development taking place on GitHub. Be sure to watch the repository to get updates on Nim's development, or star it to give us some brownie points.

Now available.

The first Nim book, Nim in Action, is now available for purchase as an eBook or printed soft cover book.* Learn the basics such as Nim's syntax, advanced features including macros and gain practical experience with the language by being lead through multiple application development examples.

  • Teaches the basics including the syntax of Nim.
  • Explains how to use the Nimble package manager.
  • Includes step-by-step instructions and explanations of how to develop various applications, including a chat program, Twitter clone and more.

* Printed soft cover book is out now!

Learn more

Support Nim

Join the 100+ companies and individuals that support Nim

The Nim project is developed globally by a group of volunteers. We welcome recurring donations, which enable us to spend more time working on Nim.

Top sponsors

See more

Community

IRC/Gitter

Real-time chat

#FreeNode#nim
nim-lang/Nim
#IRC Logs

Forum

Threaded communication

forum.nim-lang.org

GitHub issues

Bug reports

nim-lang/Nim

Twitter

Announcements

@nim_lang

Learn Nim today

Build command-line applications, games, web servers, kernels and everything else in between. Nim has a low barrier to entry and offers powerful features you won't find in many mainstream programming languages.