‍The OCaml system
release 4.12
Documentation and user’s manual
Xavier Leroy,
Damien Doligez, Alain Frisch, Jacques Garrigue, Didier Rémy and Jérôme Vouillon
February ‍24, 2021
‍ Copyright © 2021 Institut National de Recherche en Informatique et en Automatique

> This manual is also available in PDF, plain text, as a bundle of HTML files, and as a bundle of Emacs Info files.

- Contents
- Foreword

# Part ‍I An introduction to OCaml

- Chapter ‍1 The core language
- Chapter ‍2 The module system
- Chapter ‍3 Objects in OCaml
- Chapter ‍4 Labels and variants
- Chapter ‍5 Polymorphism and its limitations
- Chapter ‍6 Advanced examples with classes and modules

# Part ‍II The OCaml language

- Chapter ‍7 The OCaml language
- Chapter ‍8 Language extensions

# Part ‍III The OCaml tools

- Chapter ‍9 Batch compilation (ocamlc)
- Chapter ‍10 The toplevel system or REPL (ocaml)
- Chapter ‍11 The runtime system (ocamlrun)
- Chapter ‍12 Native-code compilation (ocamlopt)
- Chapter ‍13 Lexer and parser generators (ocamllex, ocamlyacc)
- Chapter ‍14 Dependency generator (ocamldep)
- Chapter ‍15 The documentation generator (ocamldoc)
- Chapter ‍16 The debugger (ocamldebug)
- Chapter ‍17 Profiling (ocamlprof)
- Chapter ‍18 Interfacing C with OCaml
- Chapter ‍19 Optimisation with Flambda
- Chapter ‍20 Fuzzing with afl-fuzz
- Chapter ‍21 Runtime tracing with the instrumented runtime

# Part ‍IV The OCaml library

- Chapter ‍22 The core library
- Chapter ‍23 The standard library
- Chapter ‍24 The compiler front-end
- Chapter ‍25 The unix library: Unix system calls
- Chapter ‍26 The str library: regular expressions and string processing
- Chapter ‍27 The threads library
- Chapter ‍28 The dynlink library: dynamic loading and linking of object files
- Chapter ‍29 Recently removed or moved libraries (Graphics, Bigarray, Num, LablTk)

# Part ‍V Indexes

- Index of modules
- Index of module types
- Index of types
- Index of exceptions
- Index of values

- Index of keywords

> This document was translated from LATEX by HEVEA.