是否有可能构造一个函数来映射任意元组单元的元组? 例如, f :: (m a -> m [a]) -> (m x, m y) -> (m [x], m [y])
(但对于任意的元数)。 This similar question,有许多有希望的建议;例如镜头'each或over both,但每个似乎都需要一个同质类型的元组:我想使用具有不同内部类型的同质单子元组。
我承认这个问题有点不明确,但我想知道为什么我从来没有偶然发现过Haskell中函子monique的类型类。我是否错过了它,这种缺席是否有充分理由,还是完全是由于历史原因?恕我直言,下面的继承图看起来有点古怪没有右上角:“这是什么从Functor箭头的真正含义是” Functor
|
V
Applicative ––> Alternative
| |
我很确定我想要做的事可能是不可能的,也不是一个好主意。尽管如此,在这里。 我想找到一种将任何类的任何方法转换为一个函数的通用方法,该方法将类的实例和方法的参数作为参数,并使用指定的参数调用实例上的方法基本上方法调用在一个低级别的工作原理:对象实例是由编译器堆栈帧推隐藏参数) 实施例: 鉴于 class A { def foo(param1: Type1): TypeN }
我想有是这样的: d
我试图实现Monad实例。作为一个更简单的例子,假设如下: data Maybee a = Notheeng | Juust a
instance Monad Maybee where
return x = Juust x
Notheeng >>= f = Notheeng
Juust x >>= f = f x
fail _ = Notheeng
我尝试实现多态函子对象(纯粹的抽象基类和子类)仅用于理解目的。我的目标是创建许多基类的对象,它们使用纯虚函数的不同实现。 当我创建基类的指针并将其设置为等于新的子类时,我无法将该对象作为函数调用。错误是: main.cpp:29:7: error: ‘a’ cannot be used as a function
下面是代码: #include <iostream>
class foo{