August 5, 2009 por Antonio
Comentarios (4)
Un problema muy interesante
s = "λ"
main = do
writeFile "test.txt" s
s2 <- readFile "test.txt"
print (s == s2)
Si analizamos y hacemos correr este pequeño programa el resultado deberia ser True por logica, pero el resultado real es False.
Segun Christian creador del blog Luke Plant's
El problema es con la biblioteca estándar Haskell - muchas de las funciones previstas por el Prelud, System.IO, System.Posix y muchos otros son completamente roto (por diseño). leer mas
Don Stewart dio la siguiente solucion para este problema
import Prelude hiding (writeFile, readFile, print)
import System.IO.UTF8s = "λ"
main = do
writeFile "test.txt" s
s2 <- readFile "test.txt"
print (s == s2)
Si hacemos correr este ejemplo el resultado sera True.