Couvre le calcul lambda simplement typé, en se concentrant sur sa syntaxe, sa sémantique et ses propriétés de système de type telles que le progrès et la préservation.
Se concentre sur la mise en œuvre d'un vérificateur de type pour Amy, couvrant l'analyse des noms et des types, la génération de contraintes de frappe et l'importance de la vérification de type dans la compilation.
Explore les types booléens, les opérateurs logiques et les structures de contrôle en Python, en mettant l'accent sur l'évaluation des expressions et l'utilisation des opérateurs relationnels.
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.
Introduit des nombres et des booléens en Python, couvrant les types numériques, les opérations arithmétiques, les opérations logiques et les comparaisons.
Introduit Iris, un cadre logique pour raisonner sur la sécurité et l'exactitude des programmes impératifs d'ordre supérieur simultanés, en mettant l'accent sur ses caractéristiques et applications uniques.
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.
Couvre les bases de la programmation Python, en se concentrant sur les structures de contrôle de flux, le mode interactif, le mode script et les variables.
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.
Couvre la définition d'un langage de programmation simple et sa sémantique à grande échelle, y compris les expressions arithmétiques et les commandes impératives.
Explore la sémantique musicale, discute des inférences déclenchées par différents éléments musicaux et propose un cadre pour comprendre le sens de la musique.