• [^] # Le deuxième effet OCaml

    Posté par . En réponse à la dépêche Havoc Pennington se pose des questions sur les langages du libre. Évalué à 1.

    D'autres posts de cette page rappellent les qualités techniques de OCaml
    (concision de la syntaxe, vitesse d'exécution, etc.).
    Outre ces qualités importantes: n'oublions pas les qualités
    liées à la présence d'un interpréteur (comme c'est le cas pour LISP,
    perl, python...).
    Grâce à l'interpréteur on peut tester à chaud chacune des fonctions développées
    (en purement fonctionnel, tous les programmes sont des fonctions).
    On élabore ainsi en même temps le programme et ses tests.
    C'est à mon avis beaucoup plus confortable que les langages
    uniquement compilés
    (OCaml est compilable _ET_ interprétable):
    En C ou en Java on fait édition puis compilation puis édition des
    tests puis compilation des tests puis tests.
    Avec un langage muni d'un interpréteur on fait
    édition et tests en même temps, sans avoir à programmer les tests:
    on les appelle uniquement depuis l'interpréteur.

    Et _ça_, pour la vitesse de développement que ça entraine, c'est du
    "killer feature" mes amis! :O)

    P.S: le compilateur ocaml dérecursivise les fonctions récursives
    terminales, ainsi vos fonctions écrites en purement fonctionnel
    s'éxécutent en temps et place constante. Les compilateurs scheme
    savent aussi faire cela.