
On Fri, Jan 21, 2011 at 2:30 PM, Clint Moore
After sufficient hand-wringing I finally uploaded web-mongrel2 up to hackage and I'm interested in criticism of my approach. The module itself is terribly simple as it's meant to provide a lightweight layer between an application or framework and Mongrel2, but if nothing else, it's a start.
Anyway, the hackage page is at http://hackage.haskell.org/package/web-mongrel2-0.0.2.2 with a link to the github repo.
Looks like you've done a good job so far, and have even put in a fair amount of docs. Impressive! Just some minor thoughts: * I think you should consider using ByteStrings instead of Strings in a lot of places (eg, headers). * In m2_parse, it looks to me like usage of Parsec is overkill, since a simple break would work. As a plus, if you also switch to ByteString, you could use breakByte which will give you a highly optimized parsing function. * For response_body, I'd **really** avoid usage of String. In fact, some form of enumerator would be very good there. But at the very least, please switch to a lazy ByteString. I can't really say too much more without knowing more of the internals of zeromq and mongrel2, but I think this is a good project to have going for the Haskell community. Thank you. Obviously I'm biased here, but I'd love to see a WAI wrapper for mongrel2. Would you be interested in either having this package provide a WAI interface, or writing a separate package that wraps this package and provides one? I'd be happy to offer some help if you're interested. Michael