Skip to content

Instantly share code, notes, and snippets.

View heyrutvik's full-sized avatar

Rutvik Patel heyrutvik

View GitHub Profile
object LambdaCalculus {
sealed trait Type
case class Arrow[S <: Type, T <: Type]() extends Type
case class Base() extends Type
sealed trait Ctx
case class Nil() extends Ctx
case class Cons[X <: Type, XS <: Ctx]() extends Ctx