Exceção em tempo de execução ao tentar imprimir um caractere Unicode
Char
é o tipo de caracteres Unicode em Haskell eString
e simples[Char]
(ou seja, uma lista deChar
Itens). Aqui está um código simples:
main = putStrLn "©" -- Unicode string
Esse código compila bem, mas recebo a exceção de tempo de execução quando o executo no diretórioPowerShel.exe oucmd.exe:
app.exe:: commitBuffer: argumento inválido (caractere inválido)
Por que isso acontece? Estranhamente, quando faço o mesmo em C #, não recebo exceção:
Console.WriteLine("©");
No .NET, os caracteres também são Unicode.PowerShell oucmd impressõesc
em vez de©
, mas pelo menos não recebo exceção. Como faço para que meu executável Haskell funcione sem problemas?