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

Mac环境下Haskell模块MissingH安装后的使用与相关疑问

Haskell MissingH 相关问题解答

1. 在GHCI中导入并使用MissingH的函数

  • 启动GHCI时直接指定加载MissingH包:
    ghci -package MissingH
    
  • 若已进入GHCI,先执行命令启用包:
    :set -package MissingH
    
  • 之后导入MissingH下的具体模块(比如常用的Data.String.Utils),即可调用其中函数:
    import Data.String.Utils
    -- 示例:用splitOn分割字符串
    splitOn "," "apple,banana,orange"
    

2. 查看已安装的所有模块/包

  • 查看所有已安装包:
    cabal list --installed
    # 或用ghc-pkg工具
    ghc-pkg list
    
  • 查看单个包下的所有模块(以MissingH为例):
    ghc-pkg describe MissingH | grep modules
    
  • 在GHCI中查看已加载包的模块(需先加载对应包):
    :browse MissingH
    

3. MissingH不属于Data.String的一部分

Data.String是Haskell基础库base自带的模块,MissingH是独立的第三方包。MissingH仅将部分模块(如Data.String.Utils)放在Data.String命名空间下,两者属于完全独立的包/模块体系,因此导入Data.String不会自动包含MissingH的内容,必须单独导入MissingH的对应模块。

4. 指定包路径的环境变量

  • GHC_PACKAGE_PATH:用于指定额外的GHC包数据库路径,多路径用冒号分隔,示例:
    export GHC_PACKAGE_PATH=/path/to/your/custom/pkgdb:$GHC_PACKAGE_PATH
    
  • CABAL_DIR:指定cabal的配置与包存储目录,默认路径为~/.cabal,可通过该变量修改:
    export CABAL_DIR=/path/to/custom/cabal-dir
    

类似Python pip freeze的已安装包查看命令

  • 直接列出所有已安装包及版本:
    cabal list --installed
    
  • 生成简洁的包名+版本列表(贴近pip freeze输出格式):
    ghc-pkg list --simple-output | awk '{print $1}'
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 18:30:02