My (limited) understanding is that template-haskell is not reinstallable
for the same reasons that base and ghc-prim aren't reinstallable: the GHC
codebase directly wires in several definitions several functions, types,
and data constructors from template-haskell. See THNames [1]. If one were
to, say, use GHC 8.6 but install a different version of template-haskell
than the one that came bundled with 8.6, then it's almost certain that lots
of code in THNames would no longer work, since they could be referencing
identifiers that no longer exist (if the new version of template-haskell
doesn't have them).

Ryan S.
-----
[1]
https://gitlab.haskell.org/ghc/ghc/blob/25c3dd39f7d446f66b5c967be81f80cd7facb509/compiler/prelude/THNames.hs
_______________________________________________
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs

Reply via email to