Hello, No I haven't, thanks for the link. In looking through the docs, it seems similiar at some level to what I am doing. I'm trying to get away from the language of threading (In my code, I use chain and io_pumps for context storage) since I'm thinking of node.ocaml as an event based io library. This is probably just a marketing decision, :/, rather than a technical decision. More context on node.ocaml: I was recently inspired by unix, memcache, and redis and realized that all you need as a packet format is a single line, so I'm taking that as the packet format and am going to try to build some neat things with it for both my own research/education. For my research, I want to build a fault tolerant JSON data store where I can get the performance benefits of Redis/Memcache but also have transactional transformations over indexed sets. But not only that, I want it to be easy to build them so it can be extended down the road. I've noticed that from using Redis, there are a lot of design patterns emerging that would be better migrated from the application server to a redis-like server. For my education, I really want to do something with Paxos that's useful. I'm not sure what, but I've yet to master it and it sounds fun. I'm tempted to build a chubby clone for distributed locking, but who knows. Oh, I may also cause the universe to explode since I may enable OCaml to call JavaScript via v8... In case it does, I'm sorry now. On Mon, Aug 23, 2010 at 4:31 PM, Jake Donham wrote: > On Sat, Aug 21, 2010 at 8:27 PM, Jeffrey Barber > wrote: > > example code: > > http://github.com/mathgladiator/node.ocaml/blob/master/test/kvp.ml > > Have you considered using Lwt (http://ocsigen.org/lwt) as a layer on > top of raw continuation-passing style? It has a lot of nice functions > for writing asynchronous code, as well as a syntax extension to make > it look more like direct-style code. It provides a select loop > already, but you don't need to use it, or you could integrate > libevent2 with Lwt's event loop. > > Jake >