ghci vs prelude Haskell



我最近开始学习Haskell,并对ghci>提示与前奏>促使

当输入ghci时,我得到这个:

ghci
GHCi, version 9.2.4: https://www.haskell.org/ghc/  :? for help
ghci>

当检查文档时,我看到这样的东西:

$ ghci
GHCi, version 6.12.3: http://www.haskell.org/ghc/  :? for help
Loading package base ... linking ... done.
Prelude>

除此之外,一旦我加载,我就不会进入模块

ghci> :load main
[1 of 1] Compiling Main             ( main.hs, interpreted )
Ok, one module loaded.
ghci>   

应该看起来像这样吗?

ghci> :load main
[1 of 1] Compiling Main             ( main.hs, interpreted )
Ok, one module loaded.
*Main>   

我试着在网上查找,试着编译程序

GHCi自9.0版本以来就不那么冗长了。这是因为过了一段时间,模块列表变得很长,使得shell的效率降低。

因此,从9.0版本开始,默认情况下会一直显示ghci>提示。您可以使用%s>[ghc-doc]设置提示,以显示加载的模块:

ghci> :set prompt "%s> "
Prelude> import Data.List
Prelude Data.List>

GHC 9.0.1对此进行了更改。早期版本显示了加载的模块,但现在只显示ghci>

参见GHC 9.0.1:的发布说明

2.1.2.3.GHCi

  • GHCi提示符不再列出已加载的模块。使用:set prompt "%s> ":set prompt-cont "%s| "可以恢复先前的行为

最新更新