functor

    1热度

    1回答

    写这样的实例声明工作正常: data Either a b = Left a | Right b instance Functor (Either a) where fmap _ (Left x) = Left x fmap f (Right x) = Right (f x) 现在可以说,我想这个反转,左应用于F到值: instance Functor (Either

    0热度

    1回答

    我想用可定义状态的函数作为unordered_set的散列函数,我遇到的问题是我不知道如何初始化函子传递为模板参数。这将是这样的。 class A{ private: class Hasher{ private: int a; public: Hasher(int val=3):a(val){}; s

    3热度

    1回答

    我对coq很新颖,迄今为止我设法证明了我也可以通过手工证明的东西。所以当我遇到Selection monad并决定在haskell中实现它时,我认为这将是一个很好的练习,但我被卡住了。有人能提供一个coq证明的例子,说明选择monad是应用程序和monad吗?这是一个函数的haskell实现。 newtype Sel r a = Sel { runSel :: (a -> r) -> a }

    0热度

    1回答

    根据cplusplus.com,std::transform对一个(1)或两个(2)范围的元素顺序应用操作,并将结果存储在从结果开始的范围中。的std::transform最后一个参数通常是一个函数,该函数在第一容器中的元素一些操作,但假设我有一个算符对象如下: struct functor { functor(int x) : x(x) {} int operator()(i

    0热度

    1回答

    我有一个类,其成员函数我试图指向,问题是我一直得到这个错误reference to non-static member function must be called,从我的理解是,成员函数需要指出。问题是,当我尝试使用this解决方案,编译器会抱怨,因为there is no viable conversion from 'void (Foo::*) (const List&) to std::

    1热度

    2回答

    我想代表一些标量值(例如整数或字符串) 或者它的实际值或某些NA值,并稍后将它们存储在集合(例如列表)中 。目的是处理缺失的值。 要做到这一点,我实现了一个签名 module type Scalar = sig type t type v = Value of t | NA end 现在我心里有一个包含Scalar小号一些多态性Vector类型。基本上,以下一些 modu

    2热度

    1回答

    我试图在Javascript中实现函子而不使用容器类型([]/{})。因此,我仅利用纯高阶函数来构造它们: const option = x => f => isAssigned(x) ? option(f(x)) : none; const none = option(null); const isAssigned = x => x !== null && x !=

    0热度

    1回答

    我有一个QMAP启动列表中, map.insert(1,"One"); map.insert(2,"Two"); map.insert(3,"Three"); map.insert(4,"Four"); map.insert(5,"five"); map.insert(5.5,"five.five"); map.insert(7,"five.five"); 我区间为[2,5.1]

    0热度

    1回答

    我有一个C++应用程序,其中main()实例化对象MyApp,然后将该对象传递给ReadConfig函数。 ReadConfig打开一个基于文本的文件,解析它并调用相应的MyApp方法来配置它。 class MyApp { private: public: void SetRate(uint16_t); void EnableLogging(bool); vo

    1热度

    2回答

    我经历these Haskell的“中间”的练习,我做了以下情况: class Fluffy f where furry :: (a -> b) -> f a -> f b instance Fluffy [] where furry f [] = [] instance Fluffy Maybe where furry f (Just e) = Just (