Couvre les concepts et la mise en œuvre de la programmation fonctionnelle dans Scala, mettant l'accent sur les fonctions, les données immuables et l'abstraction des données.
Introduit Stainless, un outil open-source pour vérifier les programmes Scala, couvrant le langage, la modélisation, les conseils de vérification et les travaux intérieurs.
Explore la mutation sûre dans Scala, en mettant l'accent sur la gestion de l'état mutable et son importance dans les interactions, la modélisation et l'efficacité de mise en œuvre.
Couvre les cartes en tant que structures de données clés-valeurs, y compris l'interrogation, la mise à jour et la gestion des valeurs manquantes, avec des exemples pratiques tels que la représentation polynomiale.
Explore l'analyse automatisée de terminaison à l'aide de paires de dépendances, couvrant les techniques classiques et modernes, les concours annuels et des outils comme AProVE.
Explore la programmation réactive fonctionnelle à l'aide de signaux pour simplifier les changements d'état et les réactions aux événements dans une approche plus fonctionnelle et propre.
Introduit des enregistrements, des variantes, des règles d'évaluation, des règles de dactylographie, des défis d'aliasing et des avantages dans les langages de programmation.
Couvre la modélisation des instructions de contrôle avec des fonctions dans Scala, y compris les boucles while, les boucles de répétition et la traduction for-loops.
Explore l'abstraction contextuelle dans la construction de logiciels, en discutant comment les fonctions et les cours peuvent être écrits sans connaissance détaillée du contexte dans lequel ils seront utilisés.
Explore la programmation réactive fonctionnelle comme une alternative plus propre et plus fonctionnelle au modèle d'observateur traditionnel, en utilisant des signaux pour simplifier les hiérarchies d'observateurs complexes.