35

有没有一种方法,无论是标准的还是聪明的 hack,都可以使在文件上调用 GHC 只运行类型检查器?例如

$ ghc --just-check-the-types x.hs
$

没有输出文件,没有 .hi 或 .o 等。不想/不能使用 GHC API。在这里只讨论命令行程序。

4

2 回答 2

42

怎么样ghc -fno-code file.hs。如果您的文件没有进行类型检查,它将不会生成其他文件并且会显示错误。

警告:这不会对详尽的模式匹配进行分析,因此如果您想要那些额外的有用警告,请不要单独使用此选项。

于 2012-09-11T16:24:05.563 回答
11

这是一个黑客:

crabgrass:~/programming% ghc test.hs -e 'return 0'

test.hs:1:7:
    No instance for (Num (a0 -> t0))
      arising from the literal `3'
    Possible fix: add an instance declaration for (Num (a0 -> t0))
    In the expression: 3
    In the expression: 3 4
    In an equation for `foo': foo = 3 4
zsh: exit 1     ghc test.hs -e 'return 0'
于 2012-09-11T16:23:42.647 回答