OCaml is a functional language in the ML family. According to its official site, OCaml was written in 1996 by Xavier Leroy, Jerome Vouillon, Damien Doligez, and Didier Remy at INRIA in France, building on earlier implementations including Caml (1987) and Caml Light (1990).
Like its ML ancestors, OCaml uses type inference: programmers do not have to annotate every parameter, return type, and variable, because types are inferred from how each value is used. This gives the safety of static typing with much of the brevity associated with dynamic languages. The official manual documents the resulting type system, including polymorphism, generalized algebraic data types, and polymorphic variants.
What set OCaml apart from earlier ML dialects was the combination of that type system with two additional strengths. The first was an object system, which the site describes as a powerful and elegant addition implemented in 1996 by Remy and Vouillon while preserving static type safety. The second was a high-performance native-code compiler, whose output the site says meets the highest standards of modern compilers.
That mix of safety and speed has made OCaml a practical choice in industry as well as research. It is widely associated with finance and with language tooling and compilers, reflecting the original goal of an industrial-strength ML.