Plasma GitLab Archive
Projects Blog Knowledge

Programming with Objective Caml Document Tree

Caml Components

The Ocamlnet manual
Ocamlnet project page
Ocamlnet homepage
Download Ocamlnet

    This is the archived Ocamlnet page. The new homepage can be found here!


Ocamlnet is an ongoing effort to collect modules, classes and functions that are useful to implement network protocols. Since version 2.2, Ocamlnet incorporates the Equeue, RPC, and Netclient libraries, so it now really a big player.

In detail, the following features are available:

  • netstring is about processing strings that occur in network context. Features: MIME encoding/decoding, Date/time parsing, Character encoding conversion, HTML parsing and printing, URL parsing and printing, OO-representation of channels, and a lot more.

  • netcgi1 and netcgi2 focus on portable web applications. netcgi1 is the older, backward-compatible version, whereas netcgi2 bases on a revised design, and is only partly backward-compatible. Supported are CGI, FastCGI, AJP (mod_jk), and SCGI.

  • nethttpd is a web server component (HTTP server implementation). It can be used for web applications without using an extra web server, or for serving web services.

  • rpc implements ONCRPC (alias SunRPC), the remote procedure call technology behind NFS and other Unix services.

  • netplex is a generic server framework. It can be used to build stand-alone server programs from individual components like those from netcgi2, nethttpd, and rpc.

  • netclient implements clients for HTTP (version 1.1, of course), FTP (currently partially), and Telnet.

  • equeue is an event queue used for many protocol implementations. It makes it possible to run several clients and/or servers in parallel without having to use multi-threading or multi-processing.

  • shell is about calling external commands like a Unix shell does.

  • netshm provides shared memory for IPC purposes.

  • netsys contains bindings for system functions missing in core O'Caml.

  • smtp and pop are two further client implementations for the SMTP and POP3 protocols.


There is now a reference manual. It also includes many introductory texts and tutorials.

This web site is published by Informatikbüro Gerd Stolpmann
Powered by Caml