blob: ab2376795b88166f82e61b1a9b64f7d6406dc69c (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
-- MIT License, Copyright (c) 2024 Marvin Borner
module Language.Mili.Compiler
( compile
) where
import Data.Mili ( Nat(..)
, Term(..)
, shift
)
data Comp = CAbs String Comp -- | Abstraction with pointer
| CApp Comp Comp -- | Application
| CVar -- | Namless variable
| CNum Nat -- | Peano numeral
| CRec Comp Comp Comp Comp Comp -- | Unbounded iteration
compile :: Term -> Comp
compile t = CVar
|