• # Sather

    Posté par (site web personnel) . En réponse au journal Votre langage idéal ?. Évalué à 5.

    Un langage à la Eiffel en plus simple et sans la covariance : Sather !

    Sather a presque tout : des types mutable ou immutable clairs. Un arbre d'héritage simple ou seul les feuilles peuvent être instanciés et ou l'on peux surtypé (chose fondamentale que l'on presque nulle pars)... Sather a aussi la notion d'iterator intégré dans les classes sous forme de coroutine, cela permet de faire des boucles ayant un taux d'erreur très faible et d'une clarté limpide (rien à voir avec les bouses de classes parallèles du C++).

    http://www.gnu.org/software/sather/docs-1.2/tutorial/iterators.html

    Il manque une petite mise à jour de l'ensemble ;-) A mon avis, il faut aussi un environnement parallèle de base fiable (pSather ?) et surtout, on a besoin de nos jours de pouvoir intégrer dans le langage la programmation événementielle, genre les slots de Qt ? Il est aussi important de pouvoir programmer en utilisant des fonctions non bloquantes sans faire des usines à gaz... J'aime bien aussi le framework Coro de Perl qui pourrait être une bonne base d'inspiration.

    http://search.cpan.org/dist/Coro/Coro/Intro.pod

    Le langage doit permettre de faire des programmes parallèles de type calcul (MPI - Fortran - Performance) et de type serveur (exemple ejaberd - Erlang - Robustesse)...

    Si on pars sur un langage typé (compilé), il faut aussi la compilation modulaire (chose que ne faisait pas le compilateur Sather) et évidement des espaces de noms... Donc il faut aussi un CPAN structuré et central comme le CPAN (pas une hiérarchie idiote en reverse DNS comme le java).

    Enfin, le langage doit normaliser le mappage des objets dans le format ELF afin de faciliter les passerelles avec les autres langages, notamment le C !