kodept 0.2.3

Simple compiler with dependent types support in mind
Documentation
module Main =>

enum struct Bool { True, False }

fun and(a: Bool, b: Bool) =>
    if a => if b => True
            else => False
    else => False

fun not(self: Bool) =>
    if self => False
    else => True

fun rule110(a: Bool, b: Bool, c: Bool) =>
    if   and(a,      and(b,      c))      => False
    elif and(a,      and(b,      not(c))) => True
    elif and(a,      and(not(b), c))      => True
    elif and(a,      and(not(b), not(c))) => False
    elif and(not(a), and(b,      c))      => True
    elif and(not(a), and(b,      not(c))) => True
    elif and(not(a), and(not(b), c))      => True
    else                                  => False

fun main => rule110(True, True, True)