add some ocaml interfaces and types.