Re: Strictness/laziness warnings

2016-05-29 Thread David Feuer
Mostly I'm looking for a rough estimate. Some false positives and false negatives are tolerable. If I have something like f :: Int -> Maybe String -> String f _ Nothing = "Hi there!" f n (Just b) = if n > 0 then show b else "whatever" then I'd likely be interested in a warning about the fact

Re: comment lines in Cmm outputs

2016-05-29 Thread Ben Gamari
Ömer Sinan Ağacan writes: > Wait, isn't new codegen merged years ago? I don't see these comment > lines in 8.0.1-generated Cmm files. Comments in the AST may be there > but no comments were printed until very recently. > Are you sure you are looking at code generated with

Re: comment lines in Cmm outputs

2016-05-29 Thread Ömer Sinan Ağacan
2016-05-29 11:14 GMT-04:00 Ben Gamari : > CmmUnsafeForeignCall as it looks quite similar to > a CmmCall Well then maybe we should print those differently instead of adding noise to every single line just to distinguish CmmUnsafeForeignCall from CmmCall.

Re: comment lines in Cmm outputs

2016-05-29 Thread Ömer Sinan Ağacan
Wait, isn't new codegen merged years ago? I don't see these comment lines in 8.0.1-generated Cmm files. Comments in the AST may be there but no comments were printed until very recently. If no one feels strongly about this I'd love to remove those. 2016-05-29 11:14 GMT-04:00 Ben Gamari

Re: Rank2Types example not typechecking w/ GHC8. Bug or feature?

2016-05-29 Thread Michael Karg
Hi all, thank you for the quick response. Since ImpredicativeTypes is not a road I want to go down, a newtype instead of a type synonym seems like the best bet for that particular case. Avoiding impredicativity "by accident" makes complete sense to me. I just thought to bring up the example on

Re: real person believed to be a spambot

2016-05-29 Thread Ben Gamari
Richard Eisenberg writes: > Hi devs, > > I'm forwarding the following from a friend (cc'd) who was unable to register > for Trac. Can anyone help? > > > > Hi. I tried to register with username "j6carey" and email > "j6ca...@gmail.com" to report a bug in GHC 8.0.1, and

real person believed to be a spambot

2016-05-29 Thread Richard Eisenberg
Hi devs, I'm forwarding the following from a friend (cc'd) who was unable to register for Trac. Can anyone help? Hi. I tried to register with username "j6carey" and email "j6ca...@gmail.com" to report a bug in GHC 8.0.1, and the system says there's a 97% chance I'm a spammer. It asked

Re: Rank2Types example not typechecking w/ GHC8. Bug or feature?

2016-05-29 Thread Oleg Grenrus
The non-outer variant works, because then there aren’t higher rank types at all, i.e. `state` of `Handler` is free to flow outwards. There is two ways to fix issue: Either use `newtype` or use `ImpredicativeTypes` — {-# LANGUAGE RankNTypes #-} module TestTypes where data State a=

Re: Rank2Types example not typechecking w/ GHC8. Bug or feature?

2016-05-29 Thread Adam Gundry
Hi Michael, I think that GHC 8 is correct to reject this program without ImpredicativeTypes (and if you enable ImpredicativeTypes, all bets are off). Previous versions incorrectly accepted such programs, because they didn't look through type synonyms. If you expand the type of the second

Re: Rank2Types example not typechecking w/ GHC8. Bug or feature?

2016-05-29 Thread Gabor Greif
The same bug has bitten git-annex too. IIRC. Cheers, Gabor Em domingo, 29 de maio de 2016, Michael Karg escreveu: > Hi devs, > > could you please have a look at the following code snippet (modeled after > a real-world app of mine)? There's a rank2type involved, and

Rank2Types example not typechecking w/ GHC8. Bug or feature?

2016-05-29 Thread Michael Karg
Hi devs, could you please have a look at the following code snippet (modeled after a real-world app of mine)? There's a rank2type involved, and it doesn't type-check anymore when the type is e.g. part of a tuple, whereas everything's fine when it's the "outermost" type. With GHC7.10 both

Re: comment lines in Cmm outputs

2016-05-29 Thread Ben Gamari
Ömer Sinan Ağacan writes: > I'm reading a lot of Cmm these days and comments added by Cmm dump (which are > apparently added after 8.0.1) are so annoying becuase they're not saying > anything useful (what's the point of adding "// CmmCall" to a "call" line or > "//