Re: Permitting trailing commas for record syntax ADT declarations

2014-09-23 Thread Alexander Berntsen
-BEGIN PGP SIGNED MESSAGE- Hash: SHA256 On 22/09/14 22:02, Johan Tibell wrote: Don't worry about supporting trailing/leading commas everywhere for now. Have it work for records first. We can always add support in more places later. I already have it for records. It seems to be working

Re: Permitting trailing commas for record syntax ADT declarations

2014-09-23 Thread Alexander Berntsen
-BEGIN PGP SIGNED MESSAGE- Hash: SHA256 On 22/09/14 21:07, Simon Peyton Jones wrote: have a language extension TrailingCommas (or something) to enable the extension For clarification: are you overruling the do we sneak it in HEAD or use pragma(s)-vote and telling me to do the latter?

Re: Permitting trailing commas for record syntax ADT declarations

2014-09-23 Thread Alexander Berntsen
-BEGIN PGP SIGNED MESSAGE- Hash: SHA256 A piece of information which might be relevant: if we play the pragma game, be prepared for patches that are much more involved. Sneaking into HEAD means applying a few 2-5 line patches (from what I can tell presently), whilst requiring a pragma

RE: Permitting trailing commas for record syntax ADT declarations

2014-09-23 Thread Simon Peyton Jones
| have a language extension TrailingCommas (or something) to enable | the extension | For clarification: are you overruling the do we sneak it in HEAD or | use pragma(s)-vote and telling me to do the latter? Well, it *is* a language extension, exactly like lots of other language extensions,

Re: Permitting trailing commas for record syntax ADT declarations

2014-09-23 Thread Alexander Berntsen
-BEGIN PGP SIGNED MESSAGE- Hash: SHA256 On 23/09/14 09:31, Simon Peyton Jones wrote: Well, it *is* a language extension, exactly like lots of other language extensions, isn't it? (E.g. UnicodeSyntax.) What alternative action, exactly, are you proposing? Why do you propose to treat

Re: Permitting trailing commas for record syntax ADT declarations

2014-09-23 Thread Alexander Berntsen
-BEGIN PGP SIGNED MESSAGE- Hash: SHA256 On 23/09/14 09:39, Andreas Abel wrote: If you want to do it only for commas, I suggest ExtraCommas It's only going to be commas, I think. I don't care about the name. ExtraCommas is fine by me. - -- Alexander alexan...@plaimi.net

Re: Permitting trailing commas for record syntax ADT declarations

2014-09-23 Thread Roman Cheplyaka
On 23/09/14 10:11, Alexander Berntsen wrote: On 22/09/14 21:07, Simon Peyton Jones wrote: have a language extension TrailingCommas (or something) to enable the extension For clarification: are you overruling the do we sneak it in HEAD or use pragma(s)-vote and telling me to do the latter?

Re: Permitting trailing commas for record syntax ADT declarations

2014-09-23 Thread Johan Tibell
I must say that requiring a language pragma makes the feature quite a bit more heavy weight. We're not changing the meaning of any existing programs, just allowing some new ones. One could argue that perhaps the HaskellXX standard might pick up this new pragma and thus making it unnecessary

Re: Permitting trailing commas for record syntax ADT declarations

2014-09-23 Thread Alexander Berntsen
-BEGIN PGP SIGNED MESSAGE- Hash: SHA256 On 23/09/14 10:03, Johan Tibell wrote: I must say that requiring a language pragma makes the feature quite a bit more heavy weight. We're not changing the meaning of any existing programs, just allowing some new ones. One could argue that

RE: Permitting trailing commas for record syntax ADT declarations

2014-09-23 Thread Simon Peyton Jones
We're not changing the meaning of any existing programs, just allowing some new ones. Yes, that’s true of quite a few other extensions too, notably UnicodeSyntax. Even GADTs!! It’s hard to know where to draw the line. There is, in theory at least, the point that the language extension

Re: Permitting trailing commas for record syntax ADT declarations

2014-09-23 Thread Roman Cheplyaka
Note that there's another dimension to this question: whether this pragma is switched on by default. We already have precedents like NondecreasingIndentation. So, if you mean heavy-weigth to use, not to implement, then this may address your concern. Now, with my haskell-src-exts maintainer hat

RE: Permitting trailing commas for record syntax ADT declarations

2014-09-23 Thread Simon Peyton Jones
| presently), whilst requiring a pragma means either making the parser | code really messy everywhere there's a comma, or having lots of | duplication there. I don't understand this at all. The standard way is simply to parse the comma(s) always, record the presence of trailing comma(s) in the

RE: Permitting trailing commas for record syntax ADT declarations

2014-09-23 Thread Simon Peyton Jones
PS I have to admit that GHC already fails to adhere to H-2010 by accepting trailing commas in module import lists, *without* a language extension. That is naughty, but I suppose it is a foot in the door. What to others think? Incidentally, trailing commas in tuples have quite a different

Re: Permitting trailing commas for record syntax ADT declarations

2014-09-23 Thread Alexander Berntsen
-BEGIN PGP SIGNED MESSAGE- Hash: SHA256 See the diff/excerpt below. If it were a pragma, I think this might get ugly quick (consider that this patch only adds leading/trailing commas for record declarations). If you think I should be changing things elsewhere/employing a different

user001 failure

2014-09-23 Thread Simon Peyton Jones
I'm getting a testsuite failure on Linux ../../libraries/unix/tests user001 [bad stdout] (normal) The error message is below. Does anyone have any ideas? Simon Actual stdout output differs from expected: --- ../../libraries/unix/tests/user001.stdout 2014-09-11 08:38:41.0 +0100

Re: ghc-devs Digest, Vol 133, Issue 40

2014-09-23 Thread David Feuer
Simon Peyton Jones wrote: anywhere, I think. You might want a new HsSyn data type for list with possible leading or trailing commas: data HsCommadList a = HCL Int -- Number of leading commas [a] Int -- Number of trailing commas If we're going to go to

Re: GHC AST Annotations

2014-09-23 Thread Alan Kim Zimmerman
I have created https://ghc.haskell.org/trac/ghc/ticket/9628 for this, and have decided to first tackle adding a type parameter to the entire AST, so that tool writers can add custom information as required. My first stab at this is to do is as follows ``` data HsModule r name = HsModule {

Re: Permitting trailing commas for record syntax ADT declarations

2014-09-23 Thread Carter Schonwald
i think this should be behind a pragma, On Tue, Sep 23, 2014 at 5:00 AM, Alexander Berntsen alexan...@plaimi.net wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA256 See the diff/excerpt below. If it were a pragma, I think this might get ugly quick (consider that this patch only adds