• [^] # Re: Tu devrais savoir ça

    Posté par (site web personnel) . En réponse au journal Le multicoeur va vraiment devenir problématique. Évalué à 2.

    En réalité, Erlang fait à la fois moins et plus que le pi-calcul. Moins, parce qu'il ne propose pas de notion de canal arbitraire (il y a un seul canal par processus). Plus, parce qu'il est évidemment de bien plus haut niveau.

    Erlang peut être formalisé en termes de pi-calcul [1] mais il n'a pas été inventé à partir du pi-calcul. Les liens entre les deux ont été discutés sur la liste de diffusion [2] où il est apparu qu'il est particulièrement bon pour... implémenter des interpréteurs du pi-calcul [3] !

    Quoiqu'il en soit, Erlang doit beaucoup plus à la théorie des files d'attente qu'au pi-calcul. A commencer par son nom [4]. Il est difficile de dire exactement quelles sont les influences ayant présidé à son élaboration, naturellement, mais le contexte dans lequel il a été créé (firme Ericson) autant que l'origine de ses concepteurs et leurs motivations (obtenir un langage qui capture bien les notions usuelles en télécommunications et qui soit distribué pour résister aux pannes) génèrent, à mon sens, une suspicion importante de lecture rétrospective quand on affirme qu' « Erlang est basé sur le pi-calcul, et très fortement ».

    Par contre, pour les applications réelles du pi-calcul, je trouve la page wikipedia [5] est assez complète. Mais il ne faut pas se voiler la face : d'occam-π à jocaml, les langages de programmation qui ont essayé d'utiliser le pi-calcul (ou une de ses variantes) sont des échecs. C'est dommage, mais c'est comme ça : ça ne marche pas (ou alors on n'a pas trouvé la bonne syntaxe/approche pour que ça soit utilisable sur des projets sérieux).

    Je crois beaucoup plus à la programmation réactive fonctionnelle. L'avenir nous dira bien ce qu'il en est.

    [1] http://portal.acm.org/citation.cfm?id=1088375
    [2] http://www.erlang.org/ml-archive/erlang-questions/200310/msg(...)
    [3] http://erlang.org/pipermail/erlang-questions/2003-November/0(...)
    [4] http://en.wikipedia.org/wiki/Agner_Krarup_Erlang
    [5] http://en.wikipedia.org/wiki/Pi-calculus#Applications