Get started with custom lists to organize and share courses.

Sign up

Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Introduction to functional programming in OCaml

Paris Diderot University via France Université Numerique

4 Reviews 95 students interested

Taken this course? Share your experience with other students. Write review

Overview

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

In this MOOC you will learn Functional programming using the OCaml programming language. You will discover the powerful mechanisms that are offered 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.

The OCaml programming language is a member of the ML language family pioneered by Robin Milner. An important feature of OCaml is that it 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). The OCaml compiler performs in fact a type inference: types of identifiers do not have to be declared but are inferred by the compiler at the moment of definition of an identifier, and then used for assuring type correctness when using an identifier.

We will start by using OCaml as a purely functional programming language. At the end of this MOOC we will see that OCaml is in fact a multi-paradigm language which allows you to combine the functional programming style with the imperative programming paradigm.

Syllabus

Week 0: Introduction and overview
Week 1: Basic types, definitions and functions
Week 2: Basic data structures
Week 3: More advanced data structures
Week 4: Higher order functions
Week 5: Exceptions, input/output and imperative constructs
Week 6: Modules and data abstraction

Taught by

Ralf Treinen, Yann Régis-Gianas and Roberto Di Cosmo

Reviews for France Université Numerique's Introduction to functional programming in OCaml
4.8 Based on 4 reviews

  • 5 stars 75%
  • 4 star 25%
  • 3 star 0%
  • 2 star 0%
  • 1 star 0%

Did you take this course? Share your experience with other students.

Write a review
  • 1
Prose S
4.0 6 months ago
by Prose is taking this course right now, spending 10 hours a week on it and found the course difficulty to be very hard.
To quote Wikipedia "OCaml unifies functional, imperative, and object-oriented programming under an ML-like type system. Thus, programmers need not be highly familiar with the pure functional language paradigm to use OCaml. "

The language has some other compelling advantages (eg mature libraries and development tools, rapid compilation to fast-running binary executables, being bankrolled by a successful algo-trading fund). And French MOOC platform FUN offers a free (including cert!) MOOC - in English - now in it's third iteration, with in-browser complilation/execution/grading. Wha…
Was this review helpful to you? Yes
Anonymous
5.0 2 months ago
Anonymous completed this course.
This If you're interested in learning the basis of functional programming in OCaml, I would recommand to take this MOOC ! The content is clear.

Was this review helpful to you? Yes
Mark B
5.0 3 years ago
by Mark completed this course.
Was this review helpful to you? Yes
Kuronosuke K
5.0 3 years ago
Kuronosuke completed this course.
Was this review helpful to you? Yes
  • 1

Class Central

Get personalized course recommendations, track subjects and courses with reminders, and more.

Sign up for free

Never stop learning Never Stop Learning!

Get personalized course recommendations, track subjects and courses with reminders, and more.