GHCi/Haskell对黑色兵Unicode字符有什么问题?

3
在以下这些代码行中,Haskell 只对最后一行出现了问题。我在 GHCi 中加载文件时遇到了错误:error: parse error on input ‘♟’
xK = '♔'
xK = '♕'
xR = '♖'
xB = '♗'
xN = '♘'
xP = '♙'
xk = '♚'
xk = '♛'
xr = '♜'
xb = '♝'
xn = '♞'
xp = '♟︎'

无论原因是什么,我发现其他11个字符都没问题,这很奇怪。

可能很重要的一点是:我直接从维基百科复制了这些字符。


7
它可能由两个字符组成,即“黑色棋子兵”和“变异选择器-15”吗? - snakecharmerb
1个回答

13

你的黑兵暗地里其实包含两个码点。比较如下:

> "♟" -- entered myself
"\9823"
> "♟︎" -- copied and pasted from the question
"\9823\65038"

如果您仅包含第一个代码点或将绑定从Char更改为String,它将正常工作。


1
所以这是黑魔法影响了黑兵。有点说得通... - Enlico

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接