如何调试类型级程序

时间:2016-05-08 15:54:55

标签: debugging haskell types

我试图进行一些类型级别的编程,它只是不起作用。我试图弄清楚为什么GHC完全无法推断出我想要的类型签名,我的头发被撕掉了。

有没有办法让GHC 告诉我它在做什么?

我尝试了-ddump-tc,它只打印出最终类型的签名。 (是的,他们错了。谢谢,我已经知道了。)

我也尝试了-ddump-tc-trace,它丢弃了大约70KB无法理解的乱码。 (特别是,我无法看到任何用户编写的标识符提到。)

我的代码如此接近正常工作,但不知何故,一个额外的类型变量不断出现。出于某种原因,GHC无法确定该变量应该完全确定。实际上,如果我手动编写五英里类型签名,GHC很乐意接受它。所以我显然只是错过某个地方的约束...... 但是在哪里?!> _<

0 个答案:

没有答案