Gen 是 Functor 的实例吗?

Is Gen an instance of Functor?

我正在学习 Haskell 中的仿函数,我想知道 QuickCheck 的 Gen 是否是 Functor 的一个实例?任何见解表示赞赏。

。这在 documentation for Gen 中有描述:在 instances 部分下,它显示 Functor Gen.

implemented as [src]:

instance Functor Gen where
  fmap f (MkGen h) =
    MkGen (\r n -> f (h r n))

MkGenGen的数据构造函数。它包含 QCGen -> Int -> a 类型的函数。因此,我们基本上要做的是创建一个函数 \r n -> f (h r n),从而将 "post-process" h r n.

的结果