Я сделал очень трудоемкий алгоритм, в результате которого получается короткая строка. Когда я пытаюсь распечатать его (через putStrLn), он появляется на экране символом по символу. Я понял, почему это произошло, и я попытался принудительно оценить строку перед фактической печатью.
myPrint !str = putStrLn str
Но эта помощь очень мало. Когда я запускал программу в отладке, я заметил, что принудительная оценка! Str только для первого символа.
Кто-нибудь знает, почему это так, и как с этим бороться?