Насколько я понимаю, GHC дает каждому потоку стек. Зачем это нужно? Не компилируется ли GHC в CPS? Разве нить не выражается кратко как закрытие?