#7258: Compiling DynFlags is jolly slow ---------------------------------+------------------------------------------ Reporter: simonpj | Owner: simonpj Type: bug | Status: new Priority: normal | Milestone: 7.8.1 Component: Compiler | Version: 7.6.1 Keywords: | Os: Unknown/Multiple Architecture: Unknown/Multiple | Failure: None/Unknown Difficulty: Unknown | Testcase: Blockedby: | Blocking: Related: | ---------------------------------+------------------------------------------
Comment(by simonpj@…): commit 52e43004f63276c1342933e40a673ad25cf2113a {{{ Author: Simon Peyton Jones <simo...@microsoft.com> Date: Fri Dec 21 17:39:33 2012 +0000 Use expectP in deriving( Read ) Note [Use expectP] in TcGenDeriv ~~~~~~~~~~~~~~~~~~ Note that we use expectP (Ident "T1") rather than Ident "T1" <- lexP The latter desugares to inline code for matching the Ident and the string, and this can be very voluminous. The former is much more compact. Cf Trac #7258, although that also concerned non-linearity in the occurrence analyser, a separate issue. compiler/prelude/PrelNames.lhs | 3 +- compiler/typecheck/TcGenDeriv.lhs | 43 ++++++++++++++++++++++-------------- 2 files changed, 28 insertions(+), 18 deletions(-) }}} -- Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/7258#comment:10> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler _______________________________________________ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs