Haskell 大型幺半群
我正在努力学习haskell和阅读haskell的书 在书中,作者提到了较大的字体,如下所示:Haskell 大型幺半群,haskell,Haskell,我正在努力学习haskell和阅读haskell的书 在书中,作者提到了较大的字体,如下所示: instance Monoid b => Monoid (a -> b) instance (Monoid a, Monoid b) => Monoid (a, b) instance (Monoid a, Monoid b, Monoid c) => Monoid (a, b, c) 这些幺半群的共同点是它们给了你一个新的 通过重用 表示较大类型的组件 对于较大的数据类型,
instance Monoid b => Monoid (a -> b)
instance (Monoid a, Monoid b) => Monoid (a, b)
instance (Monoid a, Monoid b, Monoid c) => Monoid (a, b, c)
这些幺半群的共同点是它们给了你一个新的
通过重用
表示较大类型的组件
对于较大的数据类型,他是什么意思 我认为作者的意思是:元组可能包含一些幺半群实例a、b和c。然而,我们可以集体地查看这些元组中的幺半群实例,从而定义一个类型为a、b、c的新幺半群。因此,从一个元组中组合在一起的3个较小的幺半群实例中,会产生a、b、c上较大的幺半群实例。我认为作者的意思是:元组可能包含一些幺半群实例a、b和c。然而,我们可以集体地查看这些元组中的幺半群实例,从而定义一个类型为a、b、c的新幺半群。因此,在一个元组中分组的3个较小的幺半群实例,在A、B、C、P中产生了较大的幺半群实例,这也有助于把->B看作是BS的一个乘积。例如,Boo-> B与B,B是同构的,这也有助于把-> B看作是BS的一个乘积。例如,Bool->b同构于b,b。