• [^] # Re: ouai

    Posté par . En réponse au journal Données vs Code. Évalué à 2.

    Excellent article!! :)

    En réalité il y a un type fantôme avec lequel tu es déjà familier, c'est le void en C. On ne peut pas créer de valeurs de de type void par contre on peut créer des types dérivés, comme pointer to void

    Non. Ce que tu décris ici est un type qui n'est pas habité. Un type phantome c'est tout autre chose. Un type phantome est un paramètre qui est présent dans le type mais n'intervient pas dans sa définition. Par exemple:

    type 'a t = T of int
    Le paramètre 'a est ici un type phantome. Ce qui veut dire que les deux valeurs suivantes sont de type différents.

    let x : string T = T 5
    let y : bool T = T 5
    En revanche une expression

    type T
    Représente soit un type non habité (pas de valeur de ce type) si elle intervient dans une définition. Soit un type abtrait quand elle intervient dans une signature.