From 3caa95a139538bb07c74847ca3aba2603a03c502 Mon Sep 17 00:00:00 2001 From: Greg Brown Date: Fri, 15 Nov 2024 15:44:30 +0000 Subject: Add compilation to scheme. Extract parser as an independent project. --- program/exp.prim | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 program/exp.prim (limited to 'program/exp.prim') diff --git a/program/exp.prim b/program/exp.prim new file mode 100644 index 0000000..3c07ec1 --- /dev/null +++ b/program/exp.prim @@ -0,0 +1,3 @@ +let add (x : Nat) (y : Nat) : Nat = foldcase x by {Z u => y; S k => ~(S k)} in +let mul (x : Nat) (y : Nat) : Nat = foldcase x by {Z u => 0; S k => add y k} in +\x, y => foldcase y by {Z u => 1; S k => mul x k} -- cgit v1.2.3