minitt 0.2.2

Mini-TT, a dependently-typed lambda calculus, extended and implementated in Rust
Documentation
let bool: U = sum { True | False };
-- Each constructor have only one argument
-- Capitalized names are constructors so constructor calls are lexically
-- recognizable

let not: bool -> bool = split
 { True => False
 | False => True
 };
-- Pattern matching

let boolean_id: bool -> bool = \lambda n . n;
-- Simple functions can be defined with lambdas

let and: bool -> bool -> bool = split
 { True => boolean_id
 | False => \lambda _. False
 };
-- Nested functions