All Projects → owo-lang → Narc Rs

owo-lang / Narc Rs

Licence: apache-2.0
(WIP) Dependently-typed programming language with Agda style dependent pattern matching

Programming Languages

rust
11053 projects

Projects that are alternatives of or similar to Narc Rs

Qo
Qo - Query Object - Pattern matching and fluent querying in Ruby
Stars: ✭ 351 (+505.17%)
Mutual labels:  pattern-matching
Meander
Tools for transparent data transformation
Stars: ✭ 617 (+963.79%)
Mutual labels:  pattern-matching
Ingraph
Incremental view maintenance for openCypher graph queries.
Stars: ✭ 40 (-31.03%)
Mutual labels:  pattern-matching
Defun
A macro to define clojure functions with parameter pattern matching just like erlang or elixir.
Stars: ✭ 432 (+644.83%)
Mutual labels:  pattern-matching
Pikelet
A friendly little systems language with first-class types. Very WIP! 🚧 🚧 🚧
Stars: ✭ 485 (+736.21%)
Mutual labels:  type-theory
Egison
The Egison Programming Language
Stars: ✭ 800 (+1279.31%)
Mutual labels:  pattern-matching
Pampy
Pampy: The Pattern Matching for Python you always dreamed of.
Stars: ✭ 3,419 (+5794.83%)
Mutual labels:  pattern-matching
Mlang
Towards changing things and see if it proofs
Stars: ✭ 57 (-1.72%)
Mutual labels:  type-theory
Pampy.js
Pampy.js: Pattern Matching for JavaScript
Stars: ✭ 544 (+837.93%)
Mutual labels:  pattern-matching
Hott
Homotopy type theory
Stars: ✭ 946 (+1531.03%)
Mutual labels:  type-theory
Cubicaltt
Experimental implementation of Cubical Type Theory
Stars: ✭ 461 (+694.83%)
Mutual labels:  type-theory
Patterns
This is an experimental library that has evolved to P1371, proposed for C++23.
Stars: ✭ 479 (+725.86%)
Mutual labels:  pattern-matching
Pcre Ocaml
OCaml bindings to PCRE (Perl Compatibility Regular Expressions)
Stars: ✭ 23 (-60.34%)
Mutual labels:  pattern-matching
Whyhaskellmatters
In this article I try to explain why Haskell keeps being such an important language by presenting some of its most important and distinguishing features and detailing them with working code examples. The presentation aims to be self-contained and does not require any previous knowledge of the language.
Stars: ✭ 418 (+620.69%)
Mutual labels:  pattern-matching
Espresso.jl
Expression transformation package
Stars: ✭ 46 (-20.69%)
Mutual labels:  pattern-matching
Typedefs
Programming language agnostic type construction language based on polynomials.
Stars: ✭ 337 (+481.03%)
Mutual labels:  type-theory
Tiny Glob
Super tiny and ~350% faster alternative to node-glob
Stars: ✭ 710 (+1124.14%)
Mutual labels:  pattern-matching
Fear
Ruby port of some Scala's monads
Stars: ✭ 58 (+0%)
Mutual labels:  pattern-matching
Matchete
A DSL for method overloading in Ruby based on pattern matching
Stars: ✭ 53 (-8.62%)
Mutual labels:  pattern-matching
Ts Pattern
🎨 A complete Pattern Matching library for TypeScript, with smart type inference.
Stars: ✭ 854 (+1372.41%)
Mutual labels:  pattern-matching

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
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].