Сделать GHC только проверку типа?
Есть ли способ, как стандартный, так и умный взлом, чтобы заставить GHC в файле запускать проверку типов? Например.
$ ghc --just-check-the-types x.hs
$
Нет выходных файлов, нет .hi или .o и т.д. Не хотите/не использовать API GHC. Просто поговорим о командной строке, здесь.
Ответы
Ответ 1
Как насчет ghc -fno-code file.hs
. Он не будет генерировать никакие другие файлы и будет показывать ошибки, если ваши файлы не выглядят typecheck.
Предостережение: это не будет делать анализ по исчерпывающим совпадениям шаблонов, поэтому, если вы хотите получить эти дополнительные полезные предупреждения, не используйте этот параметр самостоятельно.
Ответ 2
Вот хак:
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'