我想创建一个简单的计算包装器。内置的scala monads (
什么样的用例可以受益于scalaz复杂类型类monads?哪些功能无法使用内置monads,并表明需要scalaz?
一些澄清。
这个问题不是继承vs类型类的圣战。我的问题是关于提供scalaz的基础设施。不是任何带有类型类方法的库,而是这个提到的库。它稍微复杂一些。但它也有一堆实用类,在scala集合库中没有对应物。因为它是一个集合库,而不是一个monadic库。所以问题是scalaz提供的额外功能。在哪些情况下这很重要?
TraversableLike
) 对我来说似乎足够了。它们已经具备语法糖。从某种角度来看,scala集合traits是偶然的monads。而scalaz库提供了预期的monads。什么样的用例可以受益于scalaz复杂类型类monads?哪些功能无法使用内置monads,并表明需要scalaz?
一些澄清。
这个问题不是继承vs类型类的圣战。我的问题是关于提供scalaz的基础设施。不是任何带有类型类方法的库,而是这个提到的库。它稍微复杂一些。但它也有一堆实用类,在scala集合库中没有对应物。因为它是一个集合库,而不是一个monadic库。所以问题是scalaz提供的额外功能。在哪些情况下这很重要?