Education
OCaml
A curated learning path for functional systems programming in OCaml. The graph below maps out the key tutorials and their prerequisites — click any node to open the tutorial.
flowchart TD
subgraph FOUND["Foundations"]
A["Learn OCaml Workshop\n(FP Launchpad · 2026)"]
I["CS3100 — Paradigms of\nProgramming\n(IITM Monsoon 2025)"]
end
subgraph SC["Single-Core Concurrency\n(how to structure overlapping tasks)"]
B["Effects Tutorial\nConcurrent programming\nwith effect handlers"]
D["Effects Examples\nCompanion code reference"]
end
subgraph IO["Concurrency + I/O"]
E["Eio / Lwt Tutorial\nEffects-based async I/O\nin OCaml 5"]
end
subgraph MC["Multi-Core Parallelism\n(how to exploit multiple cores)"]
C["Parallel Programming\nin Multicore OCaml\n(Domains & domainslib)"]
F["OCaml 5 Tutorial\nHands-on with domains\n& parallelism features"]
end
subgraph ADV["Multi-Core + Concurrency\n(the hard intersection)"]
G["Parallelism Without Panic\nSafe patterns across cores\n(BobKonf 2026)"]
J["CS6868 — Concurrent\nProgramming\n(IITM Spring 2026)"]
end
subgraph RES["Language-Level Safety\n(the research frontier)"]
H["OxCaml Tutorial\nModes & uniqueness —\ntype system prevents data races\n(ICFP 2025)"]
end
A --> B
A --> C
A --> J
I --> B
I --> C
I --> J
B --> D
B --> E
C --> F
E --> G
F --> G
G --> H
J --> H
click A href "https://github.com/fplaunchpad/learn-ocaml-workshop-2026" _blank
click I href "https://kcsrk.info/cs3100_m25/" _blank
click B href "https://github.com/ocaml-multicore/ocaml-effects-tutorial" _blank
click D href "https://github.com/ocaml-multicore/effects-examples" _blank
click E href "https://github.com/ocaml-multicore/icfp-2023-eio-tutorial" _blank
click C href "https://github.com/ocaml-multicore/parallel-programming-in-multicore-ocaml" _blank
click F href "https://github.com/ocaml-multicore/ocaml5-tutorial" _blank
click G href "https://bobkonf.de/2026/morel.html" _blank
click J href "https://github.com/kayceesrk/cs6868_s26/" _blank
click H href "https://github.com/oxcaml/tutorial-icfp25" _blank
classDef external fill:#fff8e1,stroke:#f0a500,color:#111
class C,E,G,H external
Click any node to open the tutorial. Arrows indicate prerequisites. highlighted nodes are external resources not created by FP Launchpad.
Lean
- Workshop: Introduction to Lean — Pranav Ramesh