[GHC] #15646: ghci takes super long time to find the type of large fractional number

GHC ghc-devs at haskell.org
Fri Dec 28 11:13:48 UTC 2018


#15646: ghci takes super long time to find the type of large fractional number
-------------------------------------+-------------------------------------
        Reporter:  Johannkokos       |                Owner:
                                     |  JulianLeviston
            Type:  bug               |               Status:  new
        Priority:  normal            |            Milestone:  8.6.1
       Component:  GHCi              |              Version:  8.4.3
      Resolution:                    |             Keywords:  newcomer
Operating System:  Unknown/Multiple  |         Architecture:
 Type of failure:  Compile-time      |  Unknown/Multiple
  performance bug                    |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:  #5692             |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by JulianLeviston):

 The current problems are:

 ##Problem 1##

 As we need to store an application of `mkRational` upon desugaring, we
 need to have it exist in some library. Unfortunately, for Stage 1
 compilation, the library functions we have access to seem to be only those
 that exist in the *GHC that is compiling* rather than the *GHC that is
 being compiled*.

 This means the reference to `mkRationalName` that I've added to
 `PrelNames.hs` doesn't work, because we can't refer to any module that has
 the `mkRational` function in it; none exist. Of course, there is every
 chance we're not aware of a way to inject the bootstrapped code in — how
 does one refer to new library functions?

 Note: initially, and in the current fork as I've written it, I refer to it
 via `gHC_REAL` but that obviously doesn't work.

 ##Problem 2##

 Typechecking is still slow (less slow, granted, but only a little). I
 think this makes sense, as I haven't actually adjusted any typechecker
 code yet. I've been looking into `TcExpr.hs` which has the `tcExpr`
 function, but I need to figure through that code.

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


More information about the ghc-tickets mailing list