Ok I got it,
do a signature with a monad is a bad idea
Even if i write
module Try : (TRY with type 'a t = Success of 'a | Failure of exn) = struct
the compilation fail because of the "of" which provokes a Syntax error
I just removed the signature TRY, then it works
Just OCaml things...