This is related to a feature in the futhark compiler, which is a language with a similar module system.
I am trying to create a tool to detect unused top-level functions in Futhark, and I have been looking in the ghc codebase to find out how it does so. So far I have found these areas:
The project is a bit too big for my machine to take, so HLS is
not helping me with finding where the computation of unused
bindings (specifically functions) is done.
I would like some help with finding where ghc does this
computation, and maybe some help with the naming conventions of
the code.
Thanks in advance.