我正在研究一个有文化的Haskell脚本,该脚本定义了一个Grammar数据类型,该数据类型将加载到我的Mac上的GHCI(v.7.8.3)中。我正在尝试在我的脚本中打开名为KindSignatures和GADT的语言扩展(我对这些完全不熟悉),但我已被建议包括该行
{-# LANGUAGE KindSignatures, GADTs #-}
在我的脚本顶部。但是我收到一条错误消息:
Grammars.lhs:5:3:
Illegal kind signature ‘Grammar’
(Use KindSignatures to allow kind signatures)
In the data declaration for ‘Grammar’
Failed, modules loaded: none.
有人可以告诉我我做错了什么吗?还有关于KindSignatures或GADT的任何文档吗?我找不到多少。
答案 0 :(得分:8)
由于它是一个有文化的脚本,你需要像其他文字代码一样转义pragma:
> {-# LANGUAGE KindSignatures, GADTs #-}
或
\begin{code}
{-# LANGUAGE KindSignatures, GADTs #-}
\end{code}
取决于您使用的文字风格。