• # Il était une fois les langages fonctionnels ...

    Posté par (site web personnel) . En réponse au journal Sortie du livre Real World Haskell. Évalué à 4.

    Je constate que depuis quelques années, les langages fonctionnelles refont surface :
    - les vieux langages reprennent du poil de la bête (Haskell, Erlang, ...)
    - les langages impératifs introduisent des concepts fonctionnels,
    - de nv langages fonctionnels apparaissent (Scala par exemple).

    Et je pense que ceci est en grande partie dû à deux aspects :
    - ce sont des langages d'assez haut niveaux qui permettent de répondre à des problématiques bcp plus complexes et de façon plus élégante que ne le peuvent actuellement les langages dîts impératifs,
    - les architectures multi-corps et la progression de la programmation parallèle sur le marché ont mis en lumière les limites des outils actuels utilisés et basé sur une structure impérative et les facultés des langages fonctionnels dans le domaine.
    Le tout évidemment combiné avec la monté en puissance des machines qui permettent de palier aux pb de perfs inhérents aux programmes fonctionnels (quoique lorsque l'on regarde un programme en Caml ...)

    Ce qui est intéressant dans Haskell, c'est l'innovation que gravite autour. Il supporte ainsi non seulement le fonctionnel de second ordre, mais aussi, en quelque part, le typage du second ordre avec ses classes de type (un clin d'œil à la théorie F-Bound de Cook).

    A côté de ceci, pour ceux qui veulent s'y exercer, il existe xmonad, un gestionnaire de fenêtres X en Haskell ; vous pouvez y lire un peu son code, jouer avec. Au début, je recommande de jouer d'abord avec la conf qui est écrite en Haskell et qui est compilée à la volé dès le démarrage ou le redémarrage du gestionnaire.

    Sinon, je me suis acheté le bouquin sur Erlang de Joe Armstrong (Programming Erlang: Software for a Concurrent World) afin de m'amuser un peu plus avec ce langage (enfin, qd j'ai le temps, ce qui est de plus en plus rare ces temps-ci)