如何像常规shell命令一样在命令行中运行GHCi

时间:2018-08-24 23:19:14

标签: haskell

有什么方法可以像在shell中的常规命令一样在命令行上运行GHCi吗?

例如::GHCi中的浏览-列出特定模块的所有功能。

但是我想在shell上运行它,例如:ghci --browse "MyModule" 列出了该模块的所有功能

我知道hoogle可以在shell上运行它,例如:hoogle Monad

1 个答案:

答案 0 :(得分:3)

最简单的方法是通过标准输入管道输入命令。在Bash中,可以使用“ here-string”很好地完成此操作:

$ ghci <<< ':t reverse'
GHCi, version 8.2.1: http://www.haskell.org/ghc/  :? for help
Loaded GHCi configuration from /home/sagemuej/.ghci
Loaded GHCi configuration from /home/sagemuej/.ghc/ghci.conf
Prelude> reverse :: [a] -> [a]
Prelude> Leaving GHCi.

使用冗长0避免所有问候:

$ ghci -v0 <<< ':t reverse'
reverse :: [a] -> [a]