Panneau de gestion des cookies
NOTRE UTILISATION DES COOKIES
Des cookies sont utilisés sur notre site pour accéder à des informations stockées sur votre terminal. Nous utilisons des cookies techniques pour assurer le bon fonctionnement du site ainsi qu’avec notre partenaire des cookies fonctionnels de sécurité et partage d’information soumis à votre consentement pour les finalités décrites. Vous pouvez paramétrer le dépôt de ces cookies en cliquant sur le bouton « PARAMETRER » ci-dessous.

Functionnal programming

Ects : 4

Enseignant responsable :

Volume horaire : 58.5

Description du contenu de l'enseignement :

The goal of this course is to familiarize students with the principles of functional programming using the Haskell language. Functional programming is a modern programming paradigm that allows the rapid and reliable design of complex applications. Functional programming concepts, such as lambda expressions, are currently prevalent in most modern programming languages, such as Java, C++, JavaScript, etc. The goal of this course is to help students master them using a purely functional language (Haskell). In addition, the course covers the Haskell type system, functors, applicative and monads and let the student practice these notions with the Glasgow Haskell Compiler.

Compétence à acquérir :

This class covers the main principles of functional programming, like high-order functions, recursion and the associated complexity issues. Type systems that allow the manipulation of functions and partial functions (the notion of Currying), recursion in the context of types, infinite data types, associated data structures and their manipulation are also covered. Functors, applicative, monads and IO monads are also part of the program. All these topics are developed with programming exercises in Haskell.