Why OCaml?

Where does OCaml fit in?

Imperative

Functional

Dynamic

Static

Python

Perl

Ruby

JavaScript

PHP

C

C++

C#

Java

Fortran

Go

Lisp

Scheme

Racket

Clojure

OCaml

Haskell

SML

Scala

F#

Swift

Expressive Types

A Broad Spectrum Language

Teaching

The key point here is our programmers are Googlers, they’re not researchers. They’re typically fairly young, fresh out of school, probably learned Java, maybe learned C or C++, probably learned Python. They’re not capable of understanding a brilliant language. But we want to use them to build good software. So, the language that we give them has to be easy for them to understand and easy to adopt.

 

Rob Pike

Hiring

If a company chooses to write its software in a comparatively esoteric language, they'll be able to hire better programmers, because they'll attract only those who cared enough to learn it.

 

Paul Graham, The Python Paradox

Reinventing the Wheel

  • Build system (Jenga/Dune)
  • IDE features (Merlin)
  • Package management (opam)
  • Doc generation (odoc)
  • Stdlib (Base/Core)
  • Concurrent programming (Async)
  • UI framework (Bonsai)

You broke it you bought it

Why OCaml?

By Yaron Minsky

Why OCaml?

  • 347