OCaml

/oh-KAM-ul/ · noun · Development · Origin: 1996

Definitions

  1. A multi-paradigm language from the ML family featuring a powerful type inference system, pattern matching, and a native code compiler that produces fast executables. OCaml is used at Jane Street for trading systems, at Facebook for the Hack type checker and Flow, and remains influential in programming language research.

    In plain English: A programming language with a strong type system that catches errors at compile time, used in finance and programming language tools.

    Example: Jane Street runs billions of dollars in trades daily on OCaml — turns out type safety is a pretty good feature when real money is on the line.

Origin Story

The 'Objective' camel that Facebook chose for type-safe tooling

OCaml emerged in 1996 when Xavier Leroy and Damien Doligez at INRIA (France) added an object system to **Caml** (Categorical Abstract Machine Language). The name became **Objective Caml**, shortened to **OCaml**.

Caml itself descended from ML (Meta Language), designed by Robin Milner at Edinburgh in the 1970s. ML pioneered Hindley-Milner type inference -- the compiler deduces types automatically without explicit annotations. OCaml inherited this and added a pragmatic object system.

OCaml found industrial success at Jane Street Capital (trading), Facebook (the Flow and Hack type checkers, plus the Infer static analyzer), and Bloomberg. Its type system catches entire categories of bugs at compile time that would be runtime errors in most other languages.

Coined by: Xavier Leroy, Damien Doligez (INRIA)

Context: INRIA, France, 1996

Fun fact: Jane Street Capital, a quantitative trading firm, has built most of its trading infrastructure in OCaml. They process billions of dollars daily through OCaml code and are the language's largest industrial user.

Related Terms