SubHask.SubType

class s <: t

class Sup s t u

data family Embed s t

embedType

embedType1

embedType2

Template Haskell

mkSubtype

mkSubtypeInstance