[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: new Cohttp interface progress



On 7 Aug 2012, at 00:12, David Sheets <sheets@xxxxxxxxxxxxxx> wrote:
> 
> A monadic syntax akin to pa_lwt would be appreciated. I am developing
> an application of cohttp and I would find it quite annoying to have to
> switch to explicit binding.

Yeah. There are a few general monad p4 extensions out there, so we can try
one out.  However, if we make IO.M a functor, then we can simply create an
Lwt sub-package that instantiates a complete version of the library that is
fully Lwt-based, and can use the usual syntax extension.

> 
> Is Async's interface fundamentally faster than Lwt's? In their present
> implementation?

Not so much fundamentally faster as different.  There is a monitor-based
error propagation model, and they seem to make less use of lazy iteratee
styles (i.e. Lwt_stream) and more explicit communication (which is easier to
reason about in terms of space usage). They have a *really* nice Error.t
that uses lazy datastructures to efficiently send error notifications around.
OTOH, Lwt has more comprehensive UNIX bindings and is more portable at this
stage.

I noticed that you've been adding more HTTP header parsing in your fork
btw.  Is your application in a state where we can merge these branches soon?
I need a REST module on top of this protocol library, which it looks like
you want as well.  Dave, do you need HTTPS for your use of Cohttp?

-anil



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.