Haskell中的GHCI与Prelude命令提示符

ou6hu8tu  于 2022-12-27  发布在  其他
关注(0)|答案(2)|浏览(252)

我试图从一开始就学习Haskell,并想知道它使用的两个提示符(Haskell和Prelude)之间的区别到底是什么。这听起来可能是一个非常天真的问题,更不用说我试图在发布这个问题之前搜索答案,但没有找到一个(正确的)。提前感谢你。

b4qexyjb

b4qexyjb1#

好吧,如果我没理解错的话,你想知道这两者之间有没有区别

Prelude>

以及

ghci>

在从命令行调用GHCi之后,作为提示。
如果是这种情况,那么除了偏好之外,没有什么真实的的区别。您可以使用以下命令将提示符更改为任何您想要的提示符:

:set prompt "aglebargle> "

你可以用任何你喜欢的东西替换arglebargle>
我认为Prelude>提示符的主要优点是当你导入模块时它会更新。Prelude是你拥有的唯一没有任何导入的模块,这就是为什么它是提示符。例如,如果你,比如说,做了import Control.Monad,你会得到Prelude Control.Monad>作为提示符。

yjghlzjz

yjghlzjz2#

提示符指示正在处理的模块,由于Prelude是Haskell从GHC获得的标准模块,它显示为第一个提示符。然而从GHC 9.x版本开始,Prelude默认与所有模块一起导入(除非给出了相反的指令),所以从现在开始提示符只是“ghci〉"。

相关问题