[Haskell-cafe] Could we make Haskell Modules "location independent"?
defigueiredo at ucdavis.edu
Thu Oct 1 19:04:53 UTC 2015
Haskell is a fantastic language for refactoring, but I find the module
system gets in the way when I need to reorganize my files or am trying
to use git submodules.
My problem is that each module needs to "know where it is" relative to
the global source paths in the cabal file.
For example, if you have an import statement like
module Main where
the file SomeModule.hs must "know" that it is in a subdirectory as it is
called because its name must have the "SomeDirectory" path as a prefix:
module SomeDirectory.SomeModule where ...
this would not work
module SomeModule where ...
To avoid having to add the SomeDirectory prefix, I end up putting *all*
directories in the .cabal file.
Question: Why does GHC require an exact match between the modulename and
the complete path? Is there a way to relax this?
More information about the Haskell-Cafe