是SF已经定义的任何地方,或者它至少有名字吗?
data SF a f x = SF a (f x)
instance Functor f => Functor (SF a f) where
fmap g (SF a fx) = SF a (fmap g fx)
Run Code Online (Sandbox Code Playgroud)
你的函子看起来像
type SF a f = (,) a :. f
Run Code Online (Sandbox Code Playgroud)
使用函子组合表示法。
(不知何故,我更喜欢使用组合来查看它,而不是使用乘积和Const。)
| 归档时间: |
|
| 查看次数: |
989 次 |
| 最近记录: |