Chapter 3. The camlORB runtime

The camlORB runtime is a mixed ocaml/C library. Using type information generated by the IDL compiler, it does the necessary conversions between ocaml values and CORBA values (including exceptions) and it invokes the requested CORBA operations.

This library also contains the mapping of the standard CORBA interfaces, like CORBA::ORB, CORBA::Object or PortableServer::POA.

Programming with camlORB works as follows. Running the compiler on an IDL file intf.idl will produce two files: intf.ml and intf_t.ml. The former implements the mapping defined in Chapter 2, The CORBA -> caml mapping, the latter contains run-time type information (typecodes and interface descriptions). Initialization code in intf.ml registers the run-time type information with the camlORB runtime.