I'm not an expert, but I can quote the tutorial. Here is their code for a unit -> window bound function. value curses_initscr(value unit) { CAMLparam1 (unit); CAMLreturn ((value) initscr()); } That's why I use CAMLprim f (value unit) { CAMLreturn(Val_unit) } -- David Baelde Etudiant en Info à l'ENS Lyon _______ .^. O /V\ .° // \\ /( )\ ^^-^^