Haskell“男人”页面?

时间:2012-05-12 21:45:59

标签: haskell man

Haskell中是否有针对每个函数的手册页?换句话说,我可以在某处键入man fst并获取有关该功能的人或帮助页面吗?我发现大量的功能势不可挡!

我正在使用GHC和GHCi。

2 个答案:

答案 0 :(得分:9)

我不知道有关于此的命令行工具,但您可以使用Hoogle查找函数类型,文档的快速摘要以及基于完整在线文档的链接就其名字而言。

它甚至可以用另一种方式工作:从类型转到匹配该类型的函数!如果您认为函数必须存在于某个目的,但不知道它的名称或位置,那么这非常有用。

还有Hayoo,它会搜索整个Hackage(而Hoogle只搜索标准库),但它可能对此特定用途不太有用:搜索“fst”会返回过时的{ {1}}首先打包,然后是相关的haskell98包。

在GHCi中,您通常可以通过检查其类型来获取有关函数功能的一些信息;例如,如果你这样做

base

然后你知道GHCi> :t fst fst :: (a, b) -> a 必须返回你给它的元组的第一个元素,因为that's all a function of that type can do

答案 1 :(得分:2)

我发现它对integrate Hoogle into GHCi很有用:

$ cabal install hoogle
$ echo >> ~/.ghci ':def doc \x -> return $ ":!hoogle --info \"" ++ x ++ "\""'

Download and build Hoogle databases:
$ hoogle data

然后你可以在GHCi中做到这一点:

ghci> :doc fst
Prelude fst :: (a, b) -> a

Extract the first component of a pair. 

From package base
fst :: (a, b) -> a