【发布时间】:2018-08-25 07:26:46
【问题描述】:
有什么方法可以像 shell 中的常规命令一样在命令行上运行 GHCi?
例如::browse in GHCi - 列出特定模块的所有功能。
但我想在 shell 上运行它,例如:ghci --browse "MyModule"
其中列出了模块的所有功能
我知道 hoogle 可以在 shell 上运行它,例如:hoogle Monad
【问题讨论】:
标签: haskell
有什么方法可以像 shell 中的常规命令一样在命令行上运行 GHCi?
例如::browse in GHCi - 列出特定模块的所有功能。
但我想在 shell 上运行它,例如:ghci --browse "MyModule"
其中列出了模块的所有功能
我知道 hoogle 可以在 shell 上运行它,例如:hoogle Monad
【问题讨论】:
标签: haskell
最简单的方法是通过标准输入管道输入命令。在 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]
【讨论】: