Skip to content

nim-lang/nimony

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,312 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Nimony

Nimony is a new Nim implementation that is in heavy development. The goal is a production-ready compiler this year, for projects that can live with the documented feature set -- don't assume Nim 2's feature set! Read what is available first!

Highlights

  • Incremental recompilations.
  • Fully parallel builds.
  • No forward declarations for procs and types required.
  • Type-checked generics.
  • Unified concurrency and parallelism model via continuations, so-called passive procs.
  • Good editor support.

Read more about the design philosophy.

Installation

Clone Nimony and build with hastur:

git clone https://github.com/nim-lang/nimony.git
cd nimony
nim c -r src/hastur build all

This builds the compiler and all supporting tools into bin/. Add bin/ to your PATH to use the compiler and tools.

First program

echo lives in std/syncio, so the hello world program is:

import std/syncio

echo "hello, world"

Compile and run:

bin/nimony c -r hello.nim

Standard library

The stdlib source is in lib/std/ and is designed to be read directly — Nim is readable enough that type signatures often suffice as documentation.

For the parts where signatures aren't enough — behavioral contracts, performance traps, design rationale — there is a curated Standard Library Guide.

The examples/ directory contains runnable Nim files that serve as both usage examples and tests. Run them with hastur examples.

Language manual

The language manual covers syntax, semantics, and the type system.

About

Nimony is a new Nim implementation that is in heavy development.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors