12 articles
← Retour aux tagsLa théorie des types algébriques nous offre une correspondance élégante entre les structures de données et l'arithmétique élémentaire.
Les types de données algébriques (ADT, pour algebraic data types) constituent le socle de la modélisation dans les langages fonctionnels typés, et leur influence s'étend désormais bien au-delà.
Une fonction totale est une fonction qui termine et produit une valeur valide pour toute entrée de son domaine déclaré.
Cette phrase, popularisée par Yaron Minsky dans le contexte d'OCaml capture l'essence même d'une approche défensive de la modélisation : plutôt que de vérifier a posteriori qu'un état est valide, on s...
L'article d'Alexis King, publié en 2019, a cristallisé une intuition que beaucoup de développeurs fonctionnels portaient sans nécessairement savoir l'articuler.
Un isomorphisme entre deux types A et B est une paire de fonctions to : A → B et from : B → A telles que from(to(a)) = a et to(from(b)) = b pour toute valeur.
Le property-based testing (PBT), popularisé par QuickCheck en Haskell à la fin des années 1990, renverse l'approche traditionnelle du test unitaire.
Le scénario est classique : une fonction legacy f, enchevêtrée, difficile à maintenir, mais dont le comportement est correct (ou du moins accepté comme tel par les utilisateurs du système).
La correspondance de Curry-Howard, parfois appelée isomorphisme de Curry-Howard, établit une équivalence profonde entre deux domaines apparemment distincts : la logique formelle et la théorie des type...
Philip Wadler, dans sa conférence et son article « Propositions as Types », offre une méditation historique et philosophique sur la correspondance de Curry-Howard.
Au-delà du typage classique, certains systèmes permettent d'encoder des propriétés plus fines. Le compilateur devient alors un assistant de preuve, et permet de forcer des invariants métiers encore pl...
Le principe fondamental du Lean selon lequel un défaut coûte exponentiellement plus cher à mesure qu'il progresse dans la chaîne de valeur s'applique avec une acuité particulière au développement logi...