如何运行HLint?

时间:2014-11-27 20:48:18

标签: haskell hlint

我用Haskell编程只用了几个星期。有人告诉我使用HLint来改进我的代码。问题是我无法弄清楚如何针对我的.hs文件运行HLint。我看了the documentation,我可以使用cabal install hlint安装它。下一步是使用hlint myfile.hs运行HLint。我无法确定输入此行的位置。 cmd和ghci都不允许我运行命令。我在这里缺少什么?

我正在使用Windows。

修改

我刚删除Haskell并在我的系统上再次安装它。我认为问题出在我的Haskell安装上。这就是我尝试再次安装HLint时得到的结果: enter image description here

文件 存在于C:\Users\PCPCPCCP\AppData\Roaming\cabal\setup-exe-cache

EDIT2:

似乎hlint没有正确安装。即使重新安装haskell平台后,我也无法在我的系统上安装hlint。我确实在虚拟机上工作了......

3 个答案:

答案 0 :(得分:4)

只需在Haskell文件上运行它:

hlint filename.hs

您必须从Linux中的终端或Windows中的PowerShell / CMD.exe运行它。

我的电脑上的示例演示:

$ hlint gem.hs
gem.hs:9:9: Warning: Use void
Found:
  print "if" >> return ()
Why not:
  void (print "if")

gem.hs:10:9: Warning: Use void
Found:
  print "else" >> return ()
Why not:
  void (print "else")

2 suggestions

答案 1 :(得分:1)

我就像这样运行

hlint src/

其中" src /"是我的.cabal文件中hs-source-dirs:行中定义的目录。

答案 2 :(得分:0)

您需要导出在您的环境变量PATH中存储所有已安装二进制文件的cabal文件夹,即

sqoop import --verbose --driver $DRIVER_CLASS --connect $URL --username $LOGIN --password $PASSWORD \ --table $TABLE \ --target-dir $DIR \ -m 1 --hive-import --hive-table default.AS400TEST \ --hive-partition-key "processedate"