• [^] # Re: Module et type abstrait

    Posté par . En réponse au journal Une petite histoire d'utilisation type fort dans Ocaml. Évalué à 1.

    Et du coup, ça veut aussi dire qu'on ne peut plus passer une paire pré-existante au constructeur. Par contre le message d'erreur est vraiment contre-intuitif...

    # type bar = Bar of int *int;;
    type bar = Bar of int * int
    # let x = (1, 2);;
    val x : int * int = (1, 2)
    # let y = Bar x;;
    Error: The constructor Bar expects 2 argument(s),
    but is applied here to 1 argument(s)
    # let y = Bar (1,2);;
    val y : bar = Bar (1, 2)

    Sur la dernière ligne, on comprends qu'on passe un argument unique, qui est une paire...