作者:1237i | 来源:互联网 | 2023-05-20 15:41
1> Tikhon Jelvi..:
你有一个复制和粘贴问题:你的代码片段使用花哨的引号(“
)而不是普通的("
)和Haskell不知道如何解析它.
在错误消息中,"词法错误"表示您的语法有问题; 具体来说,它不知道如何处理'\8220'
ASCII表示的字符“
.
假设您的控制台正确支持Unicode,您可以看到像这样的转义码对应的字符putStrLn
:
Prelude GHC.Exts> putStrLn "\8220"
“
这可能有助于您将来了解类似的错误消息.
如果您在Emacs中,另一个选项是使用C-x 8
允许您按编号输入Unicode字符的命令(8220
在本例中).不幸的是,Emacs期望一个十六进制的数字,而Haskell提供一个基数为10的数字,所以你必须明确你的基数:
C-x 8 #10r8220
“
@ChelseaCarl:这听起来像编辑器或操作系统设置有问题.我不一定能帮到你,所以我建议你在[超级用户](http://superuser.com/)上提出另一个关于如何输入正常报价的问题,包括你的编辑器,操作系统和键盘布局.问题细节.