问题标签 [hlint]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
5099 浏览

haskell - 在 HLint 的上下文中,eta reduce 是什么意思

我正在看教程http://haskell.org/haskellwiki/How_to_write_a_Haskell_program

在 HLint 下运行此程序时,会出现以下错误;

有人可以阐明“Eta Reduce”在这种情况下的确切含义吗?

0 投票
3 回答
1254 浏览

debugging - Erlang 是否有与 HLint 等价的工具?

HLint 是一个 Haskell lint 工具,用于使代码更加地道。Erlang有类似的东西吗?

0 投票
2 回答
1148 浏览

plugins - Leksah 有 hlint、hoogle 集成吗?

leksah 支持任何类型的插件吗?会吗?它是否有任何内置插件,例如 hlint、hoogle、pl、djinn?如果没有,是否有一种简单的方法来整合这些东西?

0 投票
1 回答
554 浏览

emacs - Hlint 与 emacs 的集成在新机器上不起作用

我完全按照链接中描述的方式将emacs 中的 hlint 与hs-lint.el一起使用。

hlint 位于我的 $PATH 上的 ~/.cabal/bin 目录中,当我从命令行调用它时,一切都按预期工作。但是,当我在新机器上设置它并尝试在 emacs 中调用它时,我在 minibuffer 中收到以下消息:

以及*hs-lint*缓冲区中的以下内容:

据我了解,bash 没有理由在查找 hlint 时遇到困难。在那儿?

在此先感谢您的任何建议。

0 投票
1 回答
1163 浏览

haskell - Hlint 与 (Win)GHCi 的集成

通过命令提示符使用 Hlint 对我有用,但我在尝试执行 GHCi 集成时遇到问题。

http://community.haskell.org/~ndm/darcs/hlint/hlint.htm说“脚本在 hlint.ghci [链接],并且在数据目录中本地安装了一个副本。要使用,添加内容到您的 GHCi 启动文件。”。

C:\Users\X\AppData\Roaming\cabal\hlint-1.8.23 包含这个 hlint.ghci 文件。

现在我想找到 GHCi 启动文件。我正在使用 Windows 7,根据http://www.haskell.org/ghc/docs/latest/html/users_guide/ghci-dot-files.html ghci.conf 文件应该在一个文件夹中,如 .../应用数据/ghc。但是我的 ghc 文件夹(C:\Users\X\AppData\Roaming\ghc)只包含一个 ghci_history 文件。

所以我将 hlint.ghci 文件复制到我的 ghc 文件夹中,并将其重命名为 ghci.conf。从现在开始 WinGHCi 它崩溃,如果我启动 GHCi 它说:

交互式>:10:91:字符'\ n'处的字符串/字符文字中的词法错误

交互式>:4:105:字符'\ n'处的字符串/字符文字中的词法错误

我究竟做错了什么?问题与缺少的 GHCi 启动文件有关吗?

0 投票
3 回答
662 浏览

haskell - 在 Haskell 函数类型声明中使用 [Char] 而不是 String 是不是一个坏主意

我刚刚开始使用“Learn you a Haskell for Great Good”来学习 Haskell。我目前正在阅读“类型和类型类”一章,所以我的知识相当......不存在。我正在使用带有 SublimeHaskell 包的 Sublime Text 2,它在每次保存时构建/检查文件。

问题:我正在尝试像这样进行函数类型声明:

我收到这个警告:

警告:使用找到的字符串:[Char] -> [Char] 为什么不使用:String -> String

构建失败

你能向我解释一下为什么使用 Char 数组而不是 String 是一个坏主意吗?或者给我一个链接来解释可能的影响等。我已经用谷歌搜索了,但一无所获。

PS 我是一名 C# 开发人员,我了解类 c 语言中 char 数组和字符串之间的区别。

0 投票
3 回答
822 浏览

haskell - 创建单例列表的两个函数之间的区别

在我的程序上运行 hlint 时,它报告了一个错误

并提出了另一种形式

根据关于第一种形式的 hlint有什么错误,因此我为什么要使用(可读性较差的)第二个选项?

编辑

(在问题中明确添加了 hlint)

我的问题不在于从词汇的角度来看有什么区别(我确实理解它们)。我的问题是我不明白为什么 hlint 将其标记为错误。例如,懒惰有区别吗?此外,为什么hlint之前的想法是错误\x -> Just x的,而只会提出警告。

0 投票
3 回答
2930 浏览

haskell - Haskell:如何告诉 hlint 不要:`警告:使用字符串文字`

我有一个单元测试文件:

和 hlint 抱怨:

由于种种原因,我很想把['a', 'b', 'd']测试代码放进去。

我尝试了各种排列

就像将 pragma 作为文件的第一行,在模块声明之后,使用名称module而不是X04...,将 更改Warningwarn...

什么是魔法?

0 投票
1 回答
3210 浏览

haskell - Haskell 任务的 Makefile 示例

对于典型的 Haskell 任务(如编译、打包、hlint、quickcheck 等),有什么好的 makefile 规则而不是我自己发明的?

在搜索中,我发现类似以下示例的内容:

0 投票
1 回答
444 浏览

haskell - HLint : 使用 &&& 建议

我在一个小项目上运行HLint,它建议我使用 &&&。

例子 :

我理解这\x -> (f x, g x)是一种模式并欣赏这个建议。但是Control.Arrow.&&&不采用普通功能而是箭头,所以我不能&&&按照建议使用。

那么在这种情况下推荐的方法是什么?

  • 在函数上定义我自己的&&&运算符?
  • 使用箭头并做类似的事情,(arr f) &&& (arr g)但我什至不知道如何评估它?
  • 在那个特定的场合忽略Hlint。?