RE: [Haskell-cafe] Wish list for GHC API tooling support

2014-08-18 Thread Simon Peyton Jones
Based on my experiences with HaRe, I have started putting together a wish list of features I would like to see in it, which is here https://github.com/fpco/haskell-ide/wiki/GHC-API Just to say: I really support having this discussion. The GHC API is not driven enough by the needs of its clients

is this a bug: when <> happens stack trace is reported twice

2014-08-18 Thread Ömer Sinan Ağacan
Hi all, I just realized that when `+RTS -xc` is used and a <> error is happened, stack trace is reported twice. This is not the case with `error` calls, in that case stack traces are reported only once. Here's a demonstration: ➜ haskell cat loop.hs myFun :: Int myFun = let g = g +

RE: Unique as special boxing type & hidden constructors

2014-08-18 Thread p.k.f.holzenspies
Dear Simon, et al, Looking at Unique, there are a few more design choices that may be outdated, and since I'm polishing things now, anyway, I figured I could update it on more fronts. 1) There is a #ifdef define(__GLASGOW_HASKELL__), which confused me somewhat. Similar things occur elsewhere

RE: Unique as special boxing type & hidden constructors

2014-08-18 Thread p.k.f.holzenspies
PS. Unique also looks like a case where Ints are used and (>= 0) is asserted. Can these cases be converted to Word as per earlier discussions? Van: p.k.f.holzensp...@utwente.nl Verzonden: maandag 18 augustus 2014 15:49 Aan: simo...@microsoft.com; ghc-devs@ha

RE: Unique as special boxing type & hidden constructors

2014-08-18 Thread Simon Peyton Jones
1) There is a #ifdef define(__GLASGOW_HASKELL__), which confused me somewhat. Similar things occur elsewhere in the code. Isn't the assumption that GHC is being used? Is this old portability stuff that may be removed? I think so, unless others yell to the contrary. 2) Uniques are produced from

The definition of cseProgram

2014-08-18 Thread David Feuer
Currently, it's defined like this: cseProgram :: CoreProgram -> CoreProgram cseProgram binds = cseBinds emptyCSEnv binds cseBinds :: CSEnv -> [CoreBind] -> [CoreBind] cseBinds _ [] = [] cseBinds env (b:bs) = (b':bs') where (env1, b') = cseBind env b

RE: Wired-in data-constructors with UNPACKed fields

2014-08-18 Thread Simon Peyton Jones
I see three alternatives. 1. Flatten out the BigNat thing. You give good reasons why this would be bad. 2. Take care to build a DCR that really does match the one you get when you compile the source module that declares the data type. In principle, the representation does indeed depend on dy

RE: The definition of cseProgram

2014-08-18 Thread Simon Peyton Jones
Yes, we could From: ghc-devs [mailto:ghc-devs-boun...@haskell.org] On Behalf Of David Feuer Sent: 18 August 2014 22:42 To: ghc-devs Subject: The definition of cseProgram Currently, it's defined like this: cseProgram :: CoreProgram -> CoreProgram cseProgram binds = cseBinds emptyCSEnv binds cse

Partial recompilation of libraries

2014-08-18 Thread David Feuer
I'd like to try out a bunch of little changes to the list stuff in base and get some nofib results for each change. Is there a way to do this without recompiling all of GHC each time? ___ ghc-devs mailing list ghc-devs@haskell.org http://www.haskell.org/m