lambda-calculus-with-js
Version:
Using JS' anonymous functions to perform lambda calculus
13 lines (12 loc) • 330 B
JavaScript
import { K } from './combinatory';
export const bTrue = K;
export const bFalse = _ => y => y;
export function getBool(n) {
return n ? bTrue : bFalse;
}
export function deBool(n) {
return n(true)(false);
}
export const and = a => b => a(b)(a);
export const or = a => b => a(a)(b);
export const not = a => a(bFalse)(bTrue);