Version française
Home     About     Download     Resources     Contact us    

This site is updated infrequently. For up-to-date information, please visit the new OCaml website at

Browse thread
[Caml-list] High level (asynchronous) networking library?
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2001-07-12 (09:06)
From: Markus Mottl <markus@m...>
Subject: Re: [Caml-list] High level (asynchronous) networking library?
On Thu, 12 Jul 2001, Jeremy Fincher wrote:
> I've been learning O'Caml for the past little bit, and after not
> finding any high level asynchronous networking libraries (that is,
> libraries/modules for writing high performance network servers),
> I figured I would write one, since it seemed a non-trivial problem
> that wasn't too far out of my league.

Have you taken a look at the Ensemble-library? -

It may not be exactly what you want (I guess you want TCP/IP asynchronous
networking), but it surely contains tons of leading-edge networking code
that can be reused for other purposes.

Short description:

  For an application builder, Ensemble provides a library of
  protocols that can be used for quickly building complex distributed
  applications. An application registers 10 or so event handlers with
  Ensemble, and then the Ensemble protocols handle the details of reliably
  sending and receiving messages, transferring state, implementing
  security, detecting failures, and managing reconfigurations in the

And it's hellish fast for sure:

  With specially optimized protocols, Ensemble can be around 10%
  slower than raw UDP socket communication.

Markus Mottl

Markus Mottl                                   
Austrian Research Institute
for Artificial Intelligence        
Bug reports:  FAQ:
To unsubscribe, mail  Archives: