Haskell中是否有针对每个函数的手册页?换句话说,我可以在某处键入man fst
并获取有关该功能的人或帮助页面吗?我发现大量的功能势不可挡!
我正在使用GHC和GHCi。
答案 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