C'est clair que ça n'a rien à voir avec le C ou le java (à part le OO)
j'ai un peu taté le ruby, grace à ces posts trollesques ...
et j'avoue que ça m'a bien plue, et je m'y attendais
Il y a plein de petits trucs qui rendent le codage sympa ...
Il y a beaucoup de travers de python, qui sont dues à l'apport de la couche OO bien postérieure à la création du langage ...
Disons que les bases sont très bonnes ...
cependant, on ne m'otera pas l'idée que ça reste moins lisible que du python ...
Il y a plein de raccourcis avec des hieroglyphes (@,,ドル|,&,!,?,<=> ...) qui apportent de superbes fonctionnalitées (j'adore le concept du bang!)
Mais qui rendent alors la lecture bien complexe pour un programmeur ne connaissant pas le perl/ruby/bash/smalltalk (qui sont des langages bien connu comme étant bien bruités) (comprendre : sans avoir la moindre idée de ce que fait ces hiéroglyphes, il n'est pas possible de comprendre le code (pour les dev c/c++/java/c#/basic/pascal)
Là, où le python, et c'est un postulat de base en python, se refuse d'introduire des raccourcis non lisible ... (guido refuse catégoriquement, par exemple, l'introduction d'un ( .. ? ..: ..), ou l'apport d'un bang! ...)
Tout ça pour garder le python lisible ... (au détriment de superbes fonctionnalités par raccourcis/features du langage)
(pour ne pas faire comme perl ! et ils ont raisons)
Certes l'exemple avec le carré/rectangle n'est peut être pas parlant sur les réels différences python/ruby ... (déjà en python, il y avait bien plus simple) ... ça reste un exemple très basique, un cas d'école
En python, il n'y a pas de hieroglyphe, il y a certes le "__", mais c'est des règles de codages que j'applique même maintenant en c#, pour la lisibilité .... et le coup du self, qui a des "raisons d'être" ancestrales ... même si ça apporte un qqconque bruit pour certains, ça a l'avantage de parler à tout le monde ....
Après, il est vrai que c'est une question d'habitude ... si tu connais tous les hiéroglyphes, et la structure du ruby/smalltalk/perl ... le ruby sera certainement plus lisible que le python (trop textuel au gout de certain)
La seule chose qui m'embête un peu dans tout ça ... c'est que python est à 2 doigts d'être reconnu dans le monde de l'entreprise ...(en éclipsant perl ...)
Et que la communauté du libre/language/"underground" se divise un peu, en pronnant 2 modèles de langages dynamiques ... un python déjà bien rodé et quasi prêt, et un ruby (certes mieux pensé) qui fait revenir un peu perl sur le devant de la scène ...
Bon ok, il y a encore une énorme marge entre python et ruby, question avancement ...
Parrot aurait été le bien venu pour réunir enfin python/perl/ruby ... mais j'ai l'impression que c'est limite vaporware ...
Et le mec de perl(dan) s'est pris la tarte à la crème de guido pk il n'avait pas réussi à faire tourner une implémentation python dans parrot, plus rapide que la cpython, comme il l'avait promis de faire en moins d'un an ... (bon, c'est une question de temps ok)
Il y a de la place pour ruby et python (même si je persiste à dire que je crois bien plus en python (guido et sa communauté est en train de voir/penser pour rajouter un typage fort dans python, le seul truc qui lui manquerait face à un java/c#), et il est fort probable qu'un python# soit dans la clr2 de dot.net) ...
Le monde des languages est rempli de superbes languages morts-nés. Il n'y a pas que les "features du langage", il y a aussi ses libs, la communauté et le marketing ...
(le cas de php est flagrant, au niveau langage, c'est limite nulle ... le OO avant la v5 est plus que catastrophique, et ses libs (bien que très nombreuses, et couvrant tous les besoins) sont vraiment mal golés ... et pourtant il est partout de nos jours (remplaçant bien des javas) ...)
et pour troller un peu :
(dans le cadre des entreprises) Ruby n'apporte pas grand chose sur python ... alors que python apporte énorme sur perl/php ou autres ...
bien que ruby soit un peu mieux golé que python ...
[^] # Re: Différence avec Python ?
Posté par manatlan (site web personnel) . En réponse à la dépêche Sortie de Ruby 1.8.2. Évalué à 2.
j'ai un peu taté le ruby, grace à ces posts trollesques ...
et j'avoue que ça m'a bien plue, et je m'y attendais
Il y a plein de petits trucs qui rendent le codage sympa ...
Il y a beaucoup de travers de python, qui sont dues à l'apport de la couche OO bien postérieure à la création du langage ...
Disons que les bases sont très bonnes ...
cependant, on ne m'otera pas l'idée que ça reste moins lisible que du python ...
Il y a plein de raccourcis avec des hieroglyphes (@,,ドル|,&,!,?,<=> ...) qui apportent de superbes fonctionnalitées (j'adore le concept du bang!)
Mais qui rendent alors la lecture bien complexe pour un programmeur ne connaissant pas le perl/ruby/bash/smalltalk (qui sont des langages bien connu comme étant bien bruités) (comprendre : sans avoir la moindre idée de ce que fait ces hiéroglyphes, il n'est pas possible de comprendre le code (pour les dev c/c++/java/c#/basic/pascal)
Là, où le python, et c'est un postulat de base en python, se refuse d'introduire des raccourcis non lisible ... (guido refuse catégoriquement, par exemple, l'introduction d'un ( .. ? ..: ..), ou l'apport d'un bang! ...)
Tout ça pour garder le python lisible ... (au détriment de superbes fonctionnalités par raccourcis/features du langage)
(pour ne pas faire comme perl ! et ils ont raisons)
Certes l'exemple avec le carré/rectangle n'est peut être pas parlant sur les réels différences python/ruby ... (déjà en python, il y avait bien plus simple) ... ça reste un exemple très basique, un cas d'école
En python, il n'y a pas de hieroglyphe, il y a certes le "__", mais c'est des règles de codages que j'applique même maintenant en c#, pour la lisibilité .... et le coup du self, qui a des "raisons d'être" ancestrales ... même si ça apporte un qqconque bruit pour certains, ça a l'avantage de parler à tout le monde ....
Après, il est vrai que c'est une question d'habitude ... si tu connais tous les hiéroglyphes, et la structure du ruby/smalltalk/perl ... le ruby sera certainement plus lisible que le python (trop textuel au gout de certain)
La seule chose qui m'embête un peu dans tout ça ... c'est que python est à 2 doigts d'être reconnu dans le monde de l'entreprise ...(en éclipsant perl ...)
Et que la communauté du libre/language/"underground" se divise un peu, en pronnant 2 modèles de langages dynamiques ... un python déjà bien rodé et quasi prêt, et un ruby (certes mieux pensé) qui fait revenir un peu perl sur le devant de la scène ...
Bon ok, il y a encore une énorme marge entre python et ruby, question avancement ...
Parrot aurait été le bien venu pour réunir enfin python/perl/ruby ... mais j'ai l'impression que c'est limite vaporware ...
Et le mec de perl(dan) s'est pris la tarte à la crème de guido pk il n'avait pas réussi à faire tourner une implémentation python dans parrot, plus rapide que la cpython, comme il l'avait promis de faire en moins d'un an ... (bon, c'est une question de temps ok)
Il y a de la place pour ruby et python (même si je persiste à dire que je crois bien plus en python (guido et sa communauté est en train de voir/penser pour rajouter un typage fort dans python, le seul truc qui lui manquerait face à un java/c#), et il est fort probable qu'un python# soit dans la clr2 de dot.net) ...
Le monde des languages est rempli de superbes languages morts-nés. Il n'y a pas que les "features du langage", il y a aussi ses libs, la communauté et le marketing ...
(le cas de php est flagrant, au niveau langage, c'est limite nulle ... le OO avant la v5 est plus que catastrophique, et ses libs (bien que très nombreuses, et couvrant tous les besoins) sont vraiment mal golés ... et pourtant il est partout de nos jours (remplaçant bien des javas) ...)
et pour troller un peu :
(dans le cadre des entreprises) Ruby n'apporte pas grand chose sur python ... alors que python apporte énorme sur perl/php ou autres ...
bien que ruby soit un peu mieux golé que python ...