Skip to content

Instantly share code, notes, and snippets.

@halcat0x15a
Last active March 14, 2016 10:08
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
Star You must be signed in to star a gist
Save halcat0x15a/bac8d919b0a9a3c9f1bb to your computer and use it in GitHub Desktop.
object GADTs {
sealed trait Data1[A]
case class Constructor1() extends Data1[Int]
sealed trait Data2 { type T }
case class Constructor2() extends Data2 { type T = Int }
def f1[A](data: Data1[A]): A = data match { case Constructor1() => 0 }
//def f2[A](data: Data2 { type T = A }): A = data match { case Constructor2() => 0 }
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment