Introduction to Functional Programming in OCaml : the MOOC !

, Partager

Functional programming is attracting interest from a broad range of developers because it allows to write expressive, concise and elegant programs.

The course "Introduction to Functional programming using the OCaml language" introduces gradually the central notions of functional programming, via a set of video courses that are complemented by a rich set of interesting exercises that you can perform fully in your browser… Yes, this means you can start learning functional programming without any hassle : nothing to install, nothing to tune up : the programming environment is just one click away !

During the course, you will discover powerful mechanisms that allow to build and manipulate complex data structures in a clean and efficient way. And you will see how functions play a central role, as first-class values that can be freely used in any place where an expression can appear.

- Registrations are already open at
- The course will start on September 26th 2016, and will run for six weeks.
- This course will be held in English, but subtitles are already available both in English and in French.

Your expected effort is between 2 and 6 hours per week, depending on your background, including the time spent watching the the short video sequences of the course, that total approximately an hour per week.

This may seem a significant effort, but at the end of the course you will have actually learned a lot : the final programming project will confirm that you acquired a good mastery of functional programming and the ability to develop medium sized programs with ease.

Thousands of learners attended the first run of this course that ended in January 2016, and the many that completed it were extremely satisfied.

To introduce you to functional programming , we have chosen to use the OCaml programming language. OCaml is a rich, elegant, efficient programming language that reconciles the conciseness and flexibility of untyped programming languages (like Python, for example) with the safety of strongly typed programming languages (like Java, for example), and that has a vibrant user community.

Facebook, Microsoft,JaneStreet, Bloomberg are some big names in industry that adopted OCaml to develop cutting edge applications. The research community uses OCaml for writing tools like the proof assistant Coq, the Coccinelle program transformer, the Frama-C code analyser, or the Astree static analyser. Several start ups use OCaml to obtain tenfold gains in productivity and stability of their code base.

Once you have started mastering functional programming using OCaml, we are sure that other programming languages will never look the same to you again.


To take full advantage of this course you should have already some basic knowledge of computer programming, in particular you should already know how to write simple computer programs in some programming language. For instance, you should know concepts like variables (or identifiers), functions (or procedures, methods), conditionals, and loops.