OCaml Beginner

Cette formation sur 3 jours fournit une initiation solide dans l'utilisation de langage de programmation OCaml, mettant en avant les traits du langages permettant d'obtenir rapidement un logiciel robuste grâce au puissant système de types d'OCaml. Destinée à des développeurs ayant déjà une bonne connaissance d'un langage de programmation impératif tel que C, C++, Python, C# ou Java, elle couvre aussi bien le langage que les outils pour l'utiliser. Des ateliers pratiques permettent aux apprenants de développer leurs premiers programmes OCaml sur leurs machines.

Program

(to be translated soon...)

Introduction à la formation OCaml

  • Présentation générale et objectifs de cette formation OCaml
  • Principales caractéristiques du langage, avantages et positionnement
  • Fonctionnement d'OCaml (vitesse, erreurs, sûreté) et paradigmes de programmation
Exemples de cas pratiques : tour de table, échanges sur les différents contextes professionnels et les perspectives d’application des nouvelles compétences

Présentation d'OCaml

  • L'histoire d'OCaml
  • L'écosystème d'OCaml

Installer son environnement OCaml

  • Opam, le gestionnaire de paquets d'OCaml
  • Les éditeurs pour OCaml

Les outils de développement

  • L'interprète REPL d'OCaml
  • Les compilateurs OCaml (bytecode, natif, javascript)

Un programme OCaml complet

  • Réécrire le programme grep en OCaml
  • Compiler et exécuter le programme

Écrire et exécuter un programme de base

  • Invoquer OCaml
  • Structure du programme
  • Définitions et expressions
  • Structures de contrôle

Les types de données prédéfinis

  • Les types en OCaml
  • Les types primitifs
  • Les types impératifs prédéfinis
  • Les types fonctionnels prédéfinis

Contrôle avancé

  • Les boucles impératives
  • Les fonctions de première classe
  • Le filtrage de motifs sur les valeurs
  • Les exceptions

La bibliothèque standard

  • Les types primitifs
  • Les structures de données
  • Les entrées-sorties
  • L'interface Système

Définir de nouveaux types de données

  • Les alias de types
  • Les enregistrements
  • Les types algébriques
  • Les exceptions
  • Les types récursifs
  • Le polymorphisme

Les types dans la bibliothèque standard

Le système de types

  • L'inférence de types
  • L'algorithme d'unification

OCaml Beginner

Duration: 3 days Practice: 50%
Price: 2000 EUR/person excl. taxes
Pre-requisites
  • Algorithmique
  • Autre langage
Public
  • Développeurs
Pedagological Objectives
  • (to be translated soon...)
  • Introduction à la formation OCaml
  • Présentation d'OCaml
  • Installer son environnement OCaml
  • Les outils de développement
  • Un programme OCaml complet
  • Écrire et exécuter un programme de base
  • Les types de données prédéfinis
  • Contrôle avancé
  • La bibliothèque standard
  • Définir de nouveaux types de données
  • Les types dans la bibliothèque standard
  • Le système de types

Pierre Chambart (OCaml)

Pierre est ingénieur R&D chez OCamlPro depuis 2013, après une thèse de doctorat en méthodes formelles et un post-doc sur la programmation web en OCaml. Pierre est membre de la coreteam du compilateur OCaml, spécialisé dans la génération de code optimisé. Pierre est aussi l'un des développeurs principaux de la blockchain Tezos en OCaml.

Vincent Laviron (OCaml)

Vincent est ingénieur R&D chez OCamlPro depuis 2015. Après avoir travaillé sur l'adaptation de techniques d'interprétation abstraite à OCaml, Vincent a rejoint l'équipe travaillant sur Flambda, le compilateur optimisant pour OCaml, et aujourd'hui membre de la coreteam du compilateur OCaml.

Evaluating progress

We make the progress of our trainees and its evaluation a core aspect of our courses. Indeed, guaranteeing the durable acquisition of the skills at hand is key, especially for the newer comers. To that extent, we will have trainees undergo tailored group works, exercises and hands-on practice which modalities can all be customised to your specific needs.

At the end of the course, you will have an opportunity for feedback to help us improve upon our methods. This is crucial as we believe there is always room for learning on both sides of the desk and no opinion other than yours matters more for us to do so.

Considering RQTH(Recognition of Handicapped Worker Status)

If people with disabilities are part of the course, do reach out to us so we can adapt the training accordingly.

Pedagogical Ressources

The ressources are written by the OCamlPro team prior to the courses. Documents are generally written in english and can be translated to french if need be.

Funding resorts in France

Unfortunately our trainings cannot yet be funded by institutions such as OCPO (despite these funds fully covering the price of our trainings), neither can they be funded by CPF.

Inter Corporation Trainings

Time slots for our on-site Inter Corporation Trainings are the following:

  • Start - 9:30AM
  • Lunch Break - 12:00PM to 01:00PM
  • End - 05:30PM