• [^] # Re: Nosicalight version 0.2

    Posté par . En réponse au journal Nosicalight version 0.2. Évalué à 1.

    il y a un test au runtime et le lancement d'une exception ...

    OK. Tu vas donc garder des informations sur le type de tes objects pendant l'execution.

    La plupart de la programmation objet en Ocaml est de la programmation generique (aka polymorphisme statique), et pas de la vrai programmation dynamique (aka polymorphisme dynamique).

    Le problème avec le polymorphisme, c'est que chaque "groupe" (d'utilisateurs d'un langage) emploie des termes différents. Je n'ai jamais entendu de polymorphisme statique ou dynamique. Ça n'est sans doute pas trés adapté à OCaml de toutes façons vu que tout ce qui concerne les types est déterminé statiquement.

    En ocaml il y a du polymorphisme paramétrique (par ex. la fonction "longueur d'une liste" est polymorphe car elle peut prend comme argument une liste de n'importe quel type : liste d'entier, de string, etc.) et pour les objet il y a du polymorphisme d'inclusion (une fonction qui accepte un certain type d'objet en argument accepte aussi les sous-types).

    De plus le systeme de variable unmutable
    huh ?

    Enfin bref. Ce qui est intéressant en ocaml est que l'héritage (entre classes) est découplé du sous-typage (entre objets). (par ex. voir http://portal.acm.org/citation.cfm?id=96721&dl=ACM&coll=por(...) )