
This website is a set of practical, detailed tutorials for people who want to learn Objective CAML (often known as just "OCaml").
OCaml is a fast, concise and powerful language for application development - but I assume you already knew that, and I also assume you've managed to install it. If not, you can find out more at the main OCaml webpages or at the OCaml Alliance's getting started area.
Tutorials
See also:
-
Resources for OCaml beginners (mailing lists, sample code, etc.)
-
Newbie FAQ for some common questions answered
-
Glossary of OCaml-related terms
External tutorials
- List of resources at the main OCaml site
- Caml FAQ from the old OCaml web site, still very useful
- A great tutorial on camlp4, on how to extend the syntax of OCaml with the Camlp4 standard tool
- A short tutorial by David Matuszek
- Some other links to learning materials
- Jason Hickey's introduction to Objective Caml [PDF, 109 pages]
- Didier Rémy's Using, Understanding, and Unraveling the OCaml Language [PDF, 175 pages]
- An introduction to OCaml, from the Linux Gazette.
- Benefits of OCaml
Exercises
Acknowledgements
Here are some of the people who have helped write this tutorial:
- Doug Bagley
- Nicolas Cannasse
- Eric C. Cooper
- Richard Donkin
- Jim Farrand
- Fabrice Le Fessant
- Jacques Garrigue
- Stephen Gilmore
- Flavio Grossi
- Damien Guichard
- Brian Hurt
- Neel Krishnaswami
- Michel Levy
- Sven Luther
- John Gerard Malecki
- Luc Maranget
- Jean-Francois Monin
- Markus Mottl
- Thomas Mraz
- Wolfgang Mueller
- Lars Nilsson
- Jose Manuel Nunes
- Frederic van der Plancke
- Paul Steckler
- Fabian Sturm
- Ryan Tarpine
- Remi Vanicat
- Yamagata Yoriyuki
- Stefano Zacchiroli
Thanks to them and to all members of caml-list and ocaml-beginners.
This website is provided and funded by Merjis - leaders in Internet marketing.
About this wiki
This website is a wiki. This means you can edit any page to correct mistakes or improve the tutorial.
If you are new to wikis, please use the Sandbox to try out editing (you can write anything in the sandbox).
Please discuss major changes in the Discussion area. Most pages also have their own discussion area (called "page/discussion") where you can discuss major changes affecting that page. If the discussion area for a page doesn't exist, just create it first.