Почему Safe Haskell не поддерживает Template Haskell?

В документации для Safe Haskell указано:

[...] К сожалению, Template Haskell можно использовать для нарушения границ модуля и, таким образом, можно использовать для получения доступа к этому конструктору. [...] Использование флага -XSafe для компиляции модуля Danger ограничивает возможности Haskell, которые можно использовать, безопасным подмножеством. Сюда входит запрет unsafePerfromIO, Template Haskell, [...]

Используется как макросистема, которая транслирует AST в другой AST, если невозможно просто ограничить TH безопасным подмножеством Haskell, а также ограничить результирующий AST для этого подмножества?

17
задан hammar 18 August 2011 в 13:54
поделиться