-
Notifications
You must be signed in to change notification settings - Fork 0
Simple asynchronous networking in ocaml.
License
pmundkur/sonet
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Sonet is a collection of modules for asynchronous network applications. It is intended as a simpler alternative to the use of the impressive ocamlnet package(s). The modules contain an eventloop implementation, and parsers for some common protocols. The eventloop module is based on epoll for Linux, and defaults to OCaml's Unix.select on other platforms. It should be straightforward to bind to alternatives like kqueue on other platforms. Parsers and connection implementations exist for the HTTP/1.1 and D-Bus protocols. Parsers also exist for the JSON, JSONRPC and Bencode formats. Two code-generators are provided to ease the use of JSON and JSONRPC. One (json_convert) generates code to convert between OCaml native types and JSON. Another (gen_rpc) generates code for the client and server portions of a JSONRPC server, using an IDL description for the messages in the RPC protocol. Dependencies: ------------- OCaml 3.12+ Building: --------- Sonet can be built using ocamlbuild (via make) or OMake. The build using ocamlbuild does not currently build the JSON code-generators; the build using OMake is comprehensive. Installing: ----------- Installation currently uses the ocamlbuild build and depends on findlib. $ make && make install Uninstalling: ------------- From source directory: $ make uninstall Otherwise: $ ocamlfind remove sonet For system-wide OCaml installations, the install and uninstall commands above will have to be run as root.
About
Simple asynchronous networking in ocaml.
Resources
License
Stars
Watchers
Forks
Packages 0
No packages published