Haskell新手在这里。
$ ghc --版本 Glorious Glasgow Haskell 编译系统,版本 6.12.1
在尝试调试第三方 Haskell 程序中与语言环境相关的奇怪错误时,我正在尝试打印默认编码:
import System.IO
main = do
print localeEncoding
但它失败了:
$ ghc -o printlocale main.hs main.hs:4:2: 没有(显示文本编码)的实例 因在 main.hs:4:2-21 使用“打印”而产生 可能的解决方法:为 (Show TextEncoding) 添加一个实例声明 在表达式中:打印 localeEncoding 在表达式中:do { print localeEncoding } 在 `main' 的定义中: main = do { print localeEncoding }
我的 google-fu 让我失望了。我错过了什么?