в хаскеле можно пльзоваться предпроцессором. При разворачивании макросов проще использовать блоки выделяемые фигурными скобками, а не отступами (или нужно использовать?), я не помню, я один раз такой кусок где-то в base видел.
Ок, но всё равно непонятно, не сталкивался с таким