1

我有以下类型类

class BoolHolding h where
  data MyBool b :: 'Bool

但是,我不断收到错误消息:不在范围内:数据构造函数'Bool'。Haskell 是否出于某种原因不允许这样做,或者是否包含数据构造函数?如果不是,为什么不呢?

4

1 回答 1

2

好的,我所做的有两个问题。

1:DataKinds只需要提升构造函数,不需要数据类型。所以,'Bool只需要Bool.

2:种类签名data必须有一个返回种类*。我可以将数据插入到类型中,但是在完成所有应用程序之后,我最终必须有一个类型。我没有这个。

对于 2,我所要做的就是更改datatype,并且此限制不再存在。

于 2018-04-28T15:18:56.977 回答