Pour les références que tu cherches sur le langage, peut-être que cela peut correspondre à tes besoins: Core Erlang.
Pour le reste, c'est toujours un débat sans fin entre les ceux qui pensent que la robustesse ne peut venir que du contrôle de type et les industriels pragmatiques qui réalisent des applications sans cette caractéristique ;-)
Si tu reprends l'historique des conférences utilisateurs Erlang, tu constateras que c'est un débat qui revient sans fin. Certains proposent des évolutions pour transformer le langage en un langage fortement statiquement typé. Les expériences n'ont manisfestement pas encore convaincu.
Les guardes dont tu parles permettent cependant dans les cas où cela est nécessaire de tester le type de la structure passé en paramétre d'une fonction, mais ce test est fait dynamiquement. Par ailleurs, il est possible de développer ton code en ajoutant une couche de typage si tu en as besoin. Tu peux par exemple voir les travaux de Thomas Arts sur un outil baptisé Specweb, ajoutant une couche de typage à Erlang. En France, Fabien Dagnat travaille également sur des choses intéressantes.
Les tenants d'Erlang sont également adeptes de l'extreme programming et de la validation d'un développement par sa couverture en terme de test, tout en conservant la même facilité de développement. Toujours est-il qu'Ericsson a réalisé en Erlang le routeur ATM AXD 301 et qu'il est robuste, qu'il est TRES disponible et qu'il est le produit phare du marché.
La robustesse du résultat est je pense le fruit d'une bonne méthodologie de développement, d'un bon outillage de validation des développements, des facilités pour implémenter la tolérance aux pannes, de la dynamicité du langage, du mécanisme de supervision (processus travailleurs et superviseurs) impliquant une séparation du code de gestion des erreurs du code de l'application lui-même.
[^] # Re: Sytème de types
Posté par Mickaël Rémond . En réponse à la dépêche La programmation clusterisée à la portée de tous ? Un livre sur Erlang. Évalué à 1.
Pour le reste, c'est toujours un débat sans fin entre les ceux qui pensent que la robustesse ne peut venir que du contrôle de type et les industriels pragmatiques qui réalisent des applications sans cette caractéristique ;-)
Si tu reprends l'historique des conférences utilisateurs Erlang, tu constateras que c'est un débat qui revient sans fin. Certains proposent des évolutions pour transformer le langage en un langage fortement statiquement typé. Les expériences n'ont manisfestement pas encore convaincu.
Les guardes dont tu parles permettent cependant dans les cas où cela est nécessaire de tester le type de la structure passé en paramétre d'une fonction, mais ce test est fait dynamiquement. Par ailleurs, il est possible de développer ton code en ajoutant une couche de typage si tu en as besoin. Tu peux par exemple voir les travaux de Thomas Arts sur un outil baptisé Specweb, ajoutant une couche de typage à Erlang. En France, Fabien Dagnat travaille également sur des choses intéressantes.
Les tenants d'Erlang sont également adeptes de l'extreme programming et de la validation d'un développement par sa couverture en terme de test, tout en conservant la même facilité de développement. Toujours est-il qu'Ericsson a réalisé en Erlang le routeur ATM AXD 301 et qu'il est robuste, qu'il est TRES disponible et qu'il est le produit phare du marché.
La robustesse du résultat est je pense le fruit d'une bonne méthodologie de développement, d'un bon outillage de validation des développements, des facilités pour implémenter la tolérance aux pannes, de la dynamicité du langage, du mécanisme de supervision (processus travailleurs et superviseurs) impliquant une séparation du code de gestion des erreurs du code de l'application lui-même.
Mickaël