#pattern-matching #programming-language #dependent #compiler #dependently-typed #agda #narc

bin+lib nar

Narc, a dependently-typed programming language with dependent pattern matching

8 releases

0.0.8 Jan 18, 2020
0.0.7 Dec 16, 2019
0.0.4 Oct 13, 2019
0.0.3 Sep 27, 2019

#1365 in Development tools

24 downloads per month

Apache-2.0

160KB
4K SLoC

narc-rs

Crates.io Crates.io Crates.io docs.rs Actions Status dep-svg

Narc is a dependently-typed programming language with Agda style dependent pattern matching. It's called "Narc", but a rust crate narc has already been registered, thus the crate name is changed to nar and the compiler binary is therefore narc. For language description, please head to the docs.rs page.

Resources

Install

The most recommended way of installation is to download the prebuilt binaries from GitHub Actions page. Here's how to find them.

You can install the narc type-checker by this command (cargo installation and rust stable toolchain are assumed):

cargo install nar --bin narc

After installation, you can type-check a narc file by:

narc [filename]

You can also start a REPL:

narc -i

Dependencies

~2.2–4MB
~72K SLoC