> module Epic.OTTLang where
> import Epic.Language
Terms t = x | lam x. t | t t | i t | hd(t) | tl(t) | | switch(t) [t] | TY
> data OTTerm = OTRef Name -- Global or unresolved name
>             | OTV Int -- Locally bound name
>             | OTLam Name
>             | OTApp OTTerm OTTerm
>             | OTRec Tag OTTerm
>             | OTHd OTTerm
>             | OTTl OTTerm
>             | OTSwitch OTTerm [OTTerm]
>             | OTTY -- can't look at types, so dump them all here