I am very much in favor of this. IHaskell does not need this (...yet?), but I have played around with writing other source-transforming tools, and having to rely on HSE for parsing and reformatting and relying on GHC API for interpreting and typechecking is a little bit of a pain.
Besides HaRe, I'd love a tool equivalent to `go fmt` which normalized stuff like indentation, alignment, and usage of `where` vs `let`, and automatically applied various changes (of course details are complicated); that sort of thing requires good support for the sort of work you're doing in HaRe.
Also, I very strongly support any work that goes into improving the GHC API. Working with it was a nightmare at the beginning due to lack of documentation, lack of exposed symbols, and other issues.
(That said, I'm also fine with using the dynamic typing approach that was mentioned elsewhere to avoid an extra type parameter. Have the annotation be a Dynamic or something. The motivation for this would be to make the change less intrusive.)
-- Andrew