You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

GHCi中「Prelude」前缀代表什么?不同版本提示符存在差异的原因?

问题解答

1. GHCi提示符前缀存在版本差异的原因

GHC 8.2及以上版本修改了GHCi的默认提示符配置:

  • 8.2以前的旧版本默认采用动态模块名提示符规则,会把当前会话导入的顶层模块名展示在提示符上,默认仅加载Prelude时就显示Prelude>
  • 8.2及以后的新版本为了简化显示,默认把提示符改成了固定的ghci>,该变更和Prelude是否正常加载没有关联

2. "Prelude"前缀的具体含义

旧版提示符里的Prelude是当前GHCi会话顶层作用域已导入的模块列表的提示:

  • 仅默认导入Prelude时,提示符就显示为Prelude>
  • 如果额外导入了其他模块,比如执行import Data.Map,提示符会同步更新为Prelude Data.Map>
  • 如果切换作用域到自定义的模块MyModule,提示符会变成MyModule>

如果需要恢复旧版本的动态模块名提示符,可以在GHCi会话中执行命令:

:set prompt "%s> "

如果需要永久生效,可以把上述配置写入GHCi配置文件:Windows系统路径为%APPDATA%\ghc\ghci.conf,类Unix系统路径为~/.ghci。


内容的提问来源于stack exchange,提问作者enkryptor

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 15:45:08