Haskell 中的每个函数都有手册页吗?换句话说,我可以在man fst
某处键入并获得有关该功能的手册或帮助页面吗?我发现大量的功能势不可挡!
我正在使用 GHC 和 GHCi。
我不知道这方面的命令行工具,但您可以使用Hoogle查找函数的类型、其文档的快速摘要以及基于其名称的完整在线文档的链接。
它甚至可以以另一种方式工作:从一个类型到匹配该类型的函数!如果您认为某个函数必须为特定目的而存在,但不知道它被调用什么或它在哪里,这将非常有用。
还有Hayoo,它搜索整个Hackage(而 Hoogle 只搜索标准库),但对于这个特定目的它可能不太有用:搜索“fst”haskell98
首先返回过时的包,然后是相关的base
包。
在 GHCi 中,您通常可以通过检查函数的类型来了解函数的作用;例如,如果你这样做
GHCi> :t fst
fst :: (a, b) -> a
那么你知道它fst
必须返回你给它的元组的第一个元素,因为这就是那种类型的函数所能做的。
我发现将 Hoogle 集成到 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