Cofree 也许是非空的
特定
data Maybe a = Just a
| Nothing
我们有
data Cofree Maybe a
= a :< Just (Cofree Maybe a)
| a :< Nothing
这是同构的
data NonEmpty a
= NECons a (NonEmpty a)
| NESingle a
特定
data Maybe a = Just a
| Nothing
我们有
data Cofree Maybe a
= a :< Just (Cofree Maybe a)
| a :< Nothing
这是同构的
data NonEmpty a
= NECons a (NonEmpty a)
| NESingle a