[GHC] #11418: Suggest correct spelling when module is not found because of typo

GHC ghc-devs at haskell.org
Tue Feb 16 22:53:34 UTC 2016


#11418: Suggest correct spelling when module is not found because of typo
-------------------------------------+-------------------------------------
        Reporter:  syd               |                Owner:
            Type:  feature request   |               Status:  new
        Priority:  lowest            |            Milestone:
       Component:  Compiler          |              Version:
      Resolution:                    |             Keywords:
Operating System:  Unknown/Multiple  |         Architecture:
 Type of failure:  Incorrect         |  Unknown/Multiple
  warning at compile-time            |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:                    |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by simonpj):

 From Sven Panne: Just a few quick remarks:

 * Whatever you do, never walk the file system tree up or down in an
 uncontrolled way, this will kill basically all benefits and is a show-
 stopper. File systems like NFS, NTFS, stuff on USB sticks etc. are so
 **horribly** slow when used that way that the walks will probably dominate
 your compilation time. And even under Linux it's not uncommon to have a
 few dozen directory levels and hundreds of thousands of files below our
 cwd: Just check out a few repositories, have some leftovers from
 compilations, tons of documentations in small HTML files etc., and this
 sums up quickly. Git walks up the tree, but only looking for a specific
 directory and will e.g. not cross mount points under normal circumstances.
 This is probably the limit of what you can do.

 * Caching between runs will be tricky: How will you invalidate the cache?
 People can (and will :-) do all kinds of evil things between runs, so how
 can you (in-)validate the cache quicker than re-scanning the file system
 again?

 * As a general rule to keep in mind during the design: Successful compiler
 runs should not pay a price. It's OK if things are a little bit slower
 when an error occurs, but the main use case is successful compilation.
 This is a bit like exceptions in most programming language
 implementations: They are more or less for free when you don't use them
 (yes, they have a cost even then because they complicate/invalidate some
 compiler optimizations, but let's forget that for now), and are often
 costly when you actually raise them.

--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/11418#comment:27>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list