Number of hours
- Lectures 15.0
- Projects -
- Tutorials 15.0
- Internship -
- Laboratory works 15.0
- Written tests 2.0
ECTS
ECTS 0.6
Goal(s)
Understand the paradigm of functional programming wiht the example of the OCaml language.
Be able to recognize its use in various situations including with other languages such as Java or C.
Understand and manage elementary situations involving recursive programming and recursive types.
Be able to write an interpreter for a simple imperative language.
Content(s)
This course is an introduction to the functional programming based on the Ocaml language. Lectures à followed by training sessions with computers (TD) and more extended and advanced examples in practical sessions.
The following themes are explored:
-OCaml basics
-Recursive data-structures of data and recursive programming
-Evaluation mechanism
-Higher order functions
-Modules and functors
-Typing, type inference, polymorphism
-Exceptions, references, mutable types
-Streams and recursive descending parsing
-Initiation to lambda-calculus
Notions about imperative programming
20% CC = Intermediate assessment of Ocaml programming skills
80% PROJ = Project
* Evaluation will be based on the following deliverables:
**# Intermediate session reports (TD)
**# Final projet report (1 for each group)
**# Individual assessment interview
The course exists in the following branches:
- Curriculum - INFO - Semester 7
Course ID : KAIN7M05
Course language(s):
You can find this course among all other courses.
- https://ocaml.org/
- https://caml.inria.fr/pub/docs/manual-ocaml-4.07/
- Emmanuel Chailloux, Pascal Manoury et Bruno Pagano. Développement d'applications avec Objective Caml. Editions O'Reilly, Paris, 2000.