¿Por qué el siguiente código Haskell no termina:¿Por qué este código Haskell no termina?
foldr (||) True $ repeat False -- never terminates
cuando algo como esto hace:
foldr (||) False $ repeat True -- => True
Para mí, es la segunda expresión que parece estar en más problemas de los que no termina. ¿Qué pasa con mi opinión sobre la evaluación perezosa de Haskell?
siempre puede usar stepeval para este tipo de problemas. lleva un segundo descifrar, pero puede ser útil. http://bm380.user.srcf.net/cgi-bin/stepeval.cgi?expr=foldr+%28%7C%7C%29+True+%24+repeat+False – gatoatigrado
Escribí stepeval, y no está evaluando esa expresión ¡correctamente! Tiene algunos errores, me temo (en este caso, se olvida del "dejar" aunque todavía lo necesite) –