免费(Const c)要么 c

特定

data Const c a = Const c

我们有

data Free (Const c) a
     = Pure a
     | Free (Const c)

这是同构的

data Either c a
     = Right a
     | Left c