
Please tell me if I should just go away or go to another list here. Thanks again for all the feedback you've sent. I've got the new MissingH website getting started, and I've posted there the draft reorganization, module rename, and package split plan here: http://software.complete.org/missingh/wiki/TransitionPlanning Your comments (and edits! -- must register/login first) are welcome. I have not yet audited the plan for dependency sanity. This could complicate things a few places, but hopefully not too many. -- John

On Fri, Dec 01, 2006 at 04:06:08AM +0000, John Goerzen wrote:
I've got the new MissingH website getting started, and I've posted there the draft reorganization, module rename, and package split plan here:
http://software.complete.org/missingh/wiki/TransitionPlanning
Your comments (and edits! -- must register/login first) are welcome.
Do you accept contributions? I have some code I find very useful that would fit in the same places, like in Text.ParserCombinators.Parsec.Utils, Data.BitsUtils (btw, why not Data.Bits.Utils?), Control.Concurrent.*. As for other code (say Data.Tree.Utils), I am not sure what's best: put it in some big library like yours, or publish as separate small libraries. There is more work with the latter, but it seems more clean, and easy to review for the user. Best regards Tomasz

On 12/1/06, Tomasz Zielonka
Do you accept contributions? I have some code I find very useful that would fit in the same places, like in Text.ParserCombinators.Parsec.Utils, Data.BitsUtils (btw, why not Data.Bits.Utils?), Control.Concurrent.*.
Hey, contributions. I'll throw in my haskell MIME parser if you want
it. It's not the same as the one that most people use -- but I like it
better. :)
--
Taral

On Fri, Dec 01, 2006 at 01:56:34AM -0600, Taral wrote:
On 12/1/06, Tomasz Zielonka
wrote: Do you accept contributions? I have some code I find very useful that
Yes!
would fit in the same places, like in Text.ParserCombinators.Parsec.Utils, Data.BitsUtils (btw, why not Data.Bits.Utils?), Control.Concurrent.*.
Data.Bits.Utils would be fine too. I tried not to add a new level of hierarchy where none existed, but that may be more consistent.
Hey, contributions. I'll throw in my haskell MIME parser if you want it. It's not the same as the one that most people use -- but I like it better. :)
Hey Taral -- got a URL where I could take a look at it? MissingH currently has the one from WASH but if you've got a better one, I would certainly be interested. WASH brings a ton of weight along with it, and it would be nice to not have to carry that around. -- John

On Fri, Dec 01, 2006 at 07:04:56AM +0100, Tomasz Zielonka wrote:
http://software.complete.org/missingh/wiki/TransitionPlanning
Your comments (and edits! -- must register/login first) are welcome.
As for other code (say Data.Tree.Utils), I am not sure what's best: put it in some big library like yours, or publish as separate small libraries. There is more work with the latter, but it seems more clean, and easy to review for the user.
Well, MissingH is going the direction of splitting up into smaller pieces, based on feedback received here, so I'd probably suggest that you keep that separate. Unless it's just one small/simple module. -- John

John Goerzen
Please tell me if I should just go away or go to another list here.
How about libraries@haskell.org?
http://software.complete.org/missingh/wiki/TransitionPlanning
Your comments (and edits! -- must register/login first) are welcome.
About Text.ParserCombinators.Parsec.RFC2234 and the like. Although I can't see what this code does (no links on the wiki, and port 70 is firewalled here), I would be prepared to bet that you do not in fact define any new combinators for parsing. What you have there is a parser for a specific little language. Even if it is implemented using parsec combinators, it does not belong with them. Alternative suggestions: Language.RFC2234.Parse Language.ABNF.RFC2234.Parse Network.SMTP.RFC2821.Parse Network.Email.RFC2822.Parse Regards, Malcolm

Malcolm Wallace wrote:
John Goerzen
wrote: Please tell me if I should just go away or go to another list here.
How about libraries@haskell.org?
Fair enough. Will do.
http://software.complete.org/missingh/wiki/TransitionPlanning
Your comments (and edits! -- must register/login first) are welcome.
About Text.ParserCombinators.Parsec.RFC2234 and the like. Although I can't see what this code does (no links on the wiki, and port 70 is firewalled here), I would be prepared to bet that you do not in fact define any new combinators for parsing. What you have there is a parser
Here's a snippet: This module provides parsers for the grammar defined in RFC2234, "Augmented BNF for Syntax Specifications: ABNF", http://www.faqs.org/rfcs/rfc2234.html. The terminal called char in the RFC is called character here to avoid conflicts with Parsec's char function. alpha :: CharParser st Char bit :: CharParser st Char character :: CharParser st Char cr :: CharParser st Char This one is not email-specific. The other two are. (BTW, they were written by Peter Simons)
for a specific little language. Even if it is implemented using parsec combinators, it does not belong with them.
Alternative suggestions: Language.RFC2234.Parse Language.ABNF.RFC2234.Parse Network.SMTP.RFC2821.Parse Network.Email.RFC2822.Parse
Does the above suggest a single good place for them to you? -- John

John Goerzen
About Text.ParserCombinators.Parsec.RFC2234 and the like. ... ... you do not in fact define any new combinators for parsing. What you have there is a parser
This module provides parsers for the grammar defined in RFC2234,
alpha :: CharParser st Char bit :: CharParser st Char character :: CharParser st Char cr :: CharParser st Char
Yes, I do see the point that these are rather generic and basic parsers. (But they are not combinators as such, just alternative "primitives" of the domain-specific parsing language.) I guess they could easily live with Parsec after all, unless there is an obviously better place for them in the hierarchy.
Does the above suggest a single good place for them to you?
You mean, for the constructed parsers, as well as the basics? I suppose I would go for much the same suggestions as before, apart from RFC2234: Text.ParserCombinators.Parsec.RFC2234 Network.SMTP.RFC2821.Parse Network.Email.RFC2822.Parse Conceivably, you might want to drop the RFC part of the latter two names, and merely refer users to the relevant RFC in the Haddock docs? Network.SMTP.Parse Network.Email.Parse Regards, Malcolm

On Fri, Dec 01, 2006 at 01:30:25PM -0600,
John Goerzen
This module provides parsers for the grammar defined in RFC2234, "Augmented BNF for Syntax Specifications: ABNF",
Do note that it is an old reference and the RFC on ABNF is 4234, issued one year ago. Also, there is another Parsec-based parser of ABNF in Haskell, Eustathius : http://www.bortzmeyer.org/eustathius-test-grammars.html
participants (5)
-
John Goerzen
-
Malcolm Wallace
-
Stephane Bortzmeyer
-
Taral
-
Tomasz Zielonka