Explore les défis des références nulles dans les langages de programmation et propose des solutions pour atténuer leurs inconvénients tout en assurant la compatibilité avec les bases de code existantes.
S'intéresse à la vérification de type, à la reconstruction, aux équations, à l'unification, au système Hindley/Milner, au polymorphisme et aux principaux types.
Explore les cartes, les opérateurs de type, l'équivalence, les types de première classe, System Fw, Coq, et les défis de la vérification de type dans les langages de programmation.
Introduit les bases des variables et des types dans la programmation C, couvrant la déclaration, l'initialisation et les différences par rapport à Java.
Couvre la sémantique opérationnelle et les stratégies d'évaluation dans le calcul lambda, y compris redex, les stratégies d'évaluation alternatives et les booléens de l'Église.
Explore la sécurité du langage de programmation, couvrant la sécurité de type, la sécurité de la mémoire, la sécurité des menaces, le modèle de propriété de Rust, le sandboxing et la compartimentation.
Explore la programmation fonctionnelle vérifiée, la vérification formelle, les résolveurs SMT, la vérification de type, les fonctionnalités Scala, l'automatisation et les types dépendants.
Couvre les bases de la programmation C, y compris les variables, les opérateurs et la programmation orientée système, en mettant l'accent sur les différences avec Java.