- Type unité
-
Un type unité est un type mathématique avec une seule valeur.
L'ensemble associé avec le type unité peut être n'importe quel ensemble singleton. Il y a un isomorphisme entre deux tels ensembles, donc on parle souvent "du" type unité et on ignore les détails de cette valeur. On peut aussi considérer le type unité comme un 0-uple, c’est-à-dire un produit cartésien avec 0 type.
En théorie des catégories, le type unité est un objet terminal dans beaucoup de catégories basées sur les ensembles. Le type unité ne doit pas être confondu avec le zéro ou type vide, qui ne contient pas de valeur et est l'objet initial de ces catégories.
Type unité dans les langages de programmation
Plusieurs langages de programmation fournissent un type unité pour spéficier le type de la valeur retournée par une fonction avec comme seul but de causer un effet de bord, et le type d'argument d'une fonction qui ne requiert pas d'argument. Dans les langages fonctionnels Haskell et Clean, le type unité est appelé
()
, reflétant l'interprétation de 0-uplet. En ML ainsi qu'en Scala, ce type est appeléunit
relativementUnit
mais la valeur est écrite()
.En C, C++, C#, et Java,
void
est comme le type unit. Ces langage ne fournissent pas de moyen de déclarer un objet ou de représenter une valeur avec de typevoid
. Même si au sens strict, cela rend le typevoid
différent du type unité, l'utilisation des deux types est très proche en pratique.Voir aussi
Références
- Pierce, Benjamin, 2002. Types and Programming Languages. MIT Press. ISBN 0-262-16209-1
Wikimedia Foundation. 2010.