Próbuję się dowiedzieć o TH, dowiedziałem się, że pozwala to na dowolne działania IO
podczas kompilacji (patrz What's so bad about Template Haskell?). Wydaje mi się to dość niebezpieczne. Dlaczego? Czy to naprawdę konieczne w przypadku niektórych zadań? Czy może to tylko uproszczenie jego projektu, "wyrzucenie wszystkiego, co nieczyste do IO
sin-bin"?Dlaczego szablon Haskell zezwala na dowolne operacje IO podczas kompilacji?
Aktualizacja: Byłbym również zainteresowany, czy są jakieś wysiłki na dokonanie safe podzbiór TH, który wykluczy arbitralnych IO
operacje.