summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorAlec Theriault <alec.theriault@gmail.com>2019-01-24 17:33:52 -0800
committerBen Gamari <ben@smart-cactus.org>2019-01-30 10:06:32 -0500
commit5ed48d25decc9dec29659482644b136cff91606e (patch)
tree2b674e4cbde491346c108a375a636f4b260ab610 /docs
parent6fa38663d1abb22e988159ce3f80c824de3b243d (diff)
downloadhaskell-5ed48d25decc9dec29659482644b136cff91606e.tar.gz
Include type info for only some exprs in HIE files
This commit relinquishes some some type information in `.hie` files in exchange for better performance. See #16233 for more on this. Using `.hie` files to generate hyperlinked sources is a crucial milestone towards Hi Haddock (the initiative to move Haddock to work over `.hi` files and embed docstrings in those). Unfortunately, even after much optimization on the Haddock side, the `.hie` based solution is still considerably slower and more memory hungry than the existing implementation - and the @.hie@ code is to blame. This changes `.hie` file generation to track type information for only a limited subset of expressions (specifically, those that might eventually turn into hyperlinks in the Haddock's hyperlinker backend).
Diffstat (limited to 'docs')
-rw-r--r--docs/users_guide/separate_compilation.rst5
1 files changed, 5 insertions, 0 deletions
diff --git a/docs/users_guide/separate_compilation.rst b/docs/users_guide/separate_compilation.rst
index 338c438eea..8c997f0942 100644
--- a/docs/users_guide/separate_compilation.rst
+++ b/docs/users_guide/separate_compilation.rst
@@ -588,6 +588,11 @@ The GHC API exposes functions for reading and writing these files.
that are being written out. These include testing things properties such as
variables not occuring outside of their expected scopes.
+The format in which GHC currently stores its typechecked AST, makes it costly
+to collect the types for some expressions nodes. For the sake of performance,
+GHC currently chooses to skip over these, so not all expression nodes should be
+expected to have type information on them. See :ghc-ticket:`16233` for more.
+
.. _recomp:
The recompilation checker