Haskell: declaração, copie o tipo de dados para si mesmo com / sem modificação não funcionando
Quero atualizar uma sintaxe de registro com uma alteração em um campo, então fiz algo como:
let rec = rec{field = 1}
Mas notei que não consigo imprimirrec
mais, significa que o compilador parece entrar em um loop infinito quando tento. então eu tentei fazer:
let a = 1 -- prints OK
let a = a -- now i can't print a (also stuck in a loop)
Então eu não posso fazerlet a = a
com qualquer tipo, mas não entendo o porquê e como devo resolver esse problema.
BTW: enquanto fazia:
let b = a {...record changes..}
let a = b
funciona, mas parece redundante.