newsfilter.io
Lecture, Conference Presentation

Why OCaml

  • Presentation delivery will differ from previous versions due to prior presentations at Google, with expectations of an interactive conversation involving audience interruptions rather than a lecture, adapting to diverse discussion paths.
  • Audience composition is anticipated to include individuals with programming experience in Java, Python, or spreadsheets, while the speaker predicts performance disparities where Python and Perl may be significantly slower than compiled languages and JavaScript has seen substantial optimization improvements.
  • Statically typed languages are expected to feature slower development cycles due to compiler requirements and verbose syntax, whereas dynamic languages may lack REPL capabilities, though functional languages like OCaml offer pure programming styles that avoid mutation to simplify reasoning, ensure explicit inputs/outputs, and make concurrency trivial.
  • The firm adopted OCaml as its primary development language approximately a decade ago, utilizing it across a dynamic range from scripts to systems trading billions daily, which facilitates code and personnel sharing within a small organization of roughly 400 employees and 70 developers.
  • Hiring strategies target the scarce pool of OCaml programmers who are expected to be highly skilled, supported by a month-long boot camp aimed at training traders with a goal of 50% completion, while the obscure nature of the language is viewed as effective for attracting unique talent like specific university graduates.
  • Financial distributions are characterized by tail heaviness where extreme events occur more frequently than normal distributions suggest, necessitating universal guarantees beyond simple testing, with type systems identified as critical tools for eliminating trivial bugs.
  • The firm accepts the responsibility to maintain the OCaml ecosystem ("break it, buy it") alongside significant recent progress in open-source tooling such as Opam and Merlin, despite general industry inertia where new languages face high switching costs due to existing codebases.
  • Language evolution is described as slow and irrational, with mainstream adoption taking decades, while competitors and partners show varied adoption: Facebook employs OCaml for compilers used by 40 developers with 20-millisecond compilation speeds, Haskell for infrastructure, and Scala for the Twitter development team, alongside Bloomberg's unspecified OCaml usage.
  • Functional, statically typed languages are increasingly discussed and taught, yet remain more prevalent in conversation than actual implementation, a trend the speaker notes persists despite the proven effectiveness of tools like OCaml in high-performance environments.