On a la chance sur Zeste de Savoir d'avoir une communauté Python assez importante et de plus en plus en active, donc tu as déjà pas mal de réponses concernant Python. En réalité, les 3 langages ont leur avantages et leur inconvénients. Le meilleur moyen de savoir quel est celui qui te convient le mieux ? Essaye-les, et forge toi un avis.
Il m'arrive personnellement s'utiliser ces trois langages. Je me permets donc de donner mon avis, qui n'est peut-être pas très objectif.
Pour commencer, Ruby. Ruby, c'est vraiment cool pour le web. Avec Ruby on Rails, on peut faire énormément de choses, sans parler de la communauté très active et des nombreuses ressources autour du framework.
(et rails est une machine à gaz).
Heureusement, il n'y a pas que Rails avec Ruby. Si tu trouves que Rails est trop lourd, tu peux utiliser un framework plus léger comme Sinatra, par exemple.
J'ai uniquement utilisé Ruby pour du web, et j'en suis très satisfait. Pour les autres usages, je ne pourrais t'en dire plus.
Concernant Python, tu as avec les posts précédents une longue énumération de ses avantages. Python pour le web, c'est aussi très bien. Tu as de nombreux frameworks, dont le « concurrent » de Ruby on Rails, Django. C'est un excellent framework. La preuve ? Zeste de Savoir utilise Django. Comme pour Ruby, tu as aussi des frameworks plus légers comme Flask, Bottle, CherryPy, etc…
Python, c'est aussi très bien - et peut-être ce qui se fait de mieux - pour un usage scientifique : calculs, traitement d'images, etc… Tu as de nombreux modules qui sont très intéressants à explorer comme numpy, matplotlib, ou encore OpenCV.
Et puis Python, ce n'est pas uniquement ça. Avec Python, tu peut à peu près tout faire : web, petits scripts, programmation système (d'ailleurs, je crois que nohar avait commencé un tutoriel à ce sujet), etc…
La communauté Python est importante, même la francophone. Quant on débute, c'est sûrement un avantage.
Enfin, Perl. Tout d'abord, il faut bien distinguer les deux Perl : l'« ancien Perl », et le « nouveau Perl ». Pour moi, l'ancien perl, c'est toutes les versions inférieures à Perl 6, qui lui est le nouveau Perl. Perl 6 corrige pas mal de choses, et apporte de nombreux concepts intéressants qui valent vraiment le détour. Je conseille à toute personne curieuse d'y jeter un œil !
globalement je trouve les codes Perl illisible
Forcément, quand on ne connaît pas le langage, ça peut faire peur. Beaucoup critiquent les codes Perl. Dans l'imaginaire collectif, un code Perl, c'est moche. Ce n'est peut-être pas aussi esthétique qu'un code Python, mais on a l'avantage de savoir tout de suite à ce que l'on à faire. Par exemple, on sait en un simple coup d’œil quel type de données on manipule. Aujourd'hui, avec l'habitude, je préfère lire un code Perl qu'un code Python.
Perl 6 a tardé à sortir
C'est vrai que Perl 6 a tardé, mais il est enfin là !
la communauté est loin d'etre aussi active et moderne que les deux autres.
C'est vrai. Toutefois, tu trouveras toujours un noyau assez important de passionnées, et des ressources de plus en nombreuses pour Perl 6. Pour Perl 5, c'est un peu différent, les ressources sont souvent vieillissantes.
Puisque Perl propose de faire de la POO, parlons-en : le seul langage dans lequel la POO est encore plus laborieuse, je crois que c'est Javascript. Une classe en Perl est en fait un package, dont tu déclares une méthode new, dans laquelle tu utilises une fonction spéciale bless pour caster explicitement une référence sur une table de hashage en autre chose… Et bien évidemment il n'y a pas de sucre syntaxique pour ça.
Tu as raison : faire de la POO avec Perl, c'est assez pénible. Heureusement, Perl 6 a corrigé ça.
En bref : Perl 6, le langage en lui même, est vraiment intéressant. Là ou Python et Ruby (et même l'ancien Perl) sont encore au dessus, c'est au niveau de la taille de la communauté, de l’écosystème (documentation, modules). Mais ça s'améliore progressivement.