A Tale of Two Lambdas: A Haskeller's Journey into OCaml
summary
Compares concrete tradeoffs: Haskell keeps purity and a heavy optimizer while OCaml favors mutation and predictable performance; Jane Street runs roughly 80 million lines of OCaml and reports the OCaml compiler builds under five minutes versus ~25 minutes for GHC. Describes Oxamel (an OCaml fork) rolling out Oxamel purity controls (compiler work done, libraries still need annotation), ongoing work on modular implicits and higher‑kinded types, and practical tooling/namespace differences that affect readability and performance.
AI-written summary · about
chapters (18)
- 0:00Introduction
- 2:30Haskell and OCaml collaboration
- 6:23Haskell vs OCaml design
- 13:07Runtime strictness and optimization
- 18:22Laziness in Haskell and OCaml
- 21:51Performance trade-offs
- 25:21Type inference in OCaml vs Haskell
- 32:33GADT and type system
- 36:24Type classes and modules
- 41:24Higher-kinded types
- 46:20Purity and mutation
- 50:16Scope and shadowing
- 57:01Import shadowing
- 1:01:39Syntax comparison
- 1:05:40Compiler design
- 1:09:13Community models
- 1:12:43Research workshop proposal
- 1:15:54Q&A
related talks
26mAn Invitation to OCaml
46mOCaml for Fun & Profit: An Experience Report
41mA Decision Maker's Guide to Typed Functional Languages
32mEffective Programming in OCaml
53mIntro to Haskell for Erlangers
38mWhat Haskell Taught Us When We Weren't Looking
01h 04mHaskell - A Peek Inside the Ivory Tower
40mWhat Haskell taught us when we were not looking
