This book presents a practical introduction and guide to the language,
with topics ranging from how to write a program to the concepts and conventions
that affect how affect how programs are developed in OCaml. The text can be
divided into three main parts such as Core language, The module system , Objects
and class. Topics covered includes: Simple Expressions, Variables and Functions,
Basic Pattern Matching, Tuples, Lists, and Polymorphism, Unions, Reference cells
and side-effects Records, Arrays, and String, Exceptions, Input and Output,
Files, Compilation Units, and Programs, The OCaml Module System, Functors ,
Classes and inheritance, Multiple inheritance, Polymorphic Classes.