From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from majordomo@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id LAA30168; Thu, 12 Jul 2001 11:06:44 +0200 (MET DST) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id LAA30145 for ; Thu, 12 Jul 2001 11:06:43 +0200 (MET DST) Received: from chopin.ai.univie.ac.at (chopin.ai.univie.ac.at [131.130.174.170]) by nez-perce.inria.fr (8.11.1/8.10.0) with ESMTP id f6C96gb09706 for ; Thu, 12 Jul 2001 11:06:42 +0200 (MET DST) Received: (from markus@localhost) by chopin.ai.univie.ac.at (8.9.3/8.9.3/Debian 8.9.3-21) id LAA05439; Thu, 12 Jul 2001 11:06:37 +0200 Date: Thu, 12 Jul 2001 11:06:37 +0200 From: Markus Mottl To: Jeremy Fincher Cc: caml-list@pauillac.inria.fr Subject: Re: [Caml-list] High level (asynchronous) networking library? Message-ID: <20010712110636.A5381@chopin.ai.univie.ac.at> References: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: ; from tweedgeezer@hotmail.com on Thu, Jul 12, 2001 at 01:31:22 -0400 Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk 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? - http://www.cs.cornell.edu/Info/Projects/Ensemble 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 system. And it's hellish fast for sure: With specially optimized protocols, Ensemble can be around 10% slower than raw UDP socket communication. Regards, Markus Mottl -- Markus Mottl markus@oefai.at Austrian Research Institute for Artificial Intelligence http://www.oefai.at/~markus ------------------- Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/ To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr