Ruby est inspiré de Smalltalk (entre autre) alors je ne suis pas sur que Smalltalk apporte beaucoup dans ce cas..
Je trouve la syntaxe plus simple et plus flexible. Tu peux rajouter facilement des structures de contrôle comme tu le ferais en CL avec ses bonnes vieilles macros.
Les implémentations sont généralement plus matures, notamment au niveau du garbage collector (généralement quand quelqu'un râle contre les GC c'est qu'il n'en a pas utilisé de bon.) Les implémentations compilent en bytecode, tu peux sauvegarder ta VM en l'état (càd avec toutes ses libs chargées, pour un démarrage plus rapide)... Bref, pas mal d'avantages.
Essaie une fois et tu verras. Quand j'en faisais un peu (avant de retourner à CL) j'avais testé Squeak (c'est louche au début à cause de l'interface) et Cincom Smalltalk (pas libre mais gratuit et c'est un bon truc). Tu remarqueras vite aussi la différence entre le mode de développement en Ruby et celui en Smalltalk.
En Smalltalk, tout comme en CL ou Erlang, tu développes ton code vraiment de manière incrémentale. En Smalltalk, tu développes en "bottom-up "et pas "top-down". Càd que tu commences par coder de petites fonctions de bas niveau, tu t'amuses un peu avec pour vérifier que tout marche, puis tu les combines dans des fonctions plus grandes, jusqu'à arriver à ce que tu veux (je dis fonctions mais en Smalltalk on parleras plus d'objets et de méthodes... mon habitude du CL qui ressort ;-) )
PS: j'ai pas l'url pour Cincom Smalltalk, mais ça se trouve facilement.
[^] # Re: Smalltalk
Posté par Thomas . En réponse à la dépêche Seaside 2.8 est sorti. Évalué à 4.
Je trouve la syntaxe plus simple et plus flexible. Tu peux rajouter facilement des structures de contrôle comme tu le ferais en CL avec ses bonnes vieilles macros.
Les implémentations sont généralement plus matures, notamment au niveau du garbage collector (généralement quand quelqu'un râle contre les GC c'est qu'il n'en a pas utilisé de bon.) Les implémentations compilent en bytecode, tu peux sauvegarder ta VM en l'état (càd avec toutes ses libs chargées, pour un démarrage plus rapide)... Bref, pas mal d'avantages.
Essaie une fois et tu verras. Quand j'en faisais un peu (avant de retourner à CL) j'avais testé Squeak (c'est louche au début à cause de l'interface) et Cincom Smalltalk (pas libre mais gratuit et c'est un bon truc). Tu remarqueras vite aussi la différence entre le mode de développement en Ruby et celui en Smalltalk.
En Smalltalk, tout comme en CL ou Erlang, tu développes ton code vraiment de manière incrémentale. En Smalltalk, tu développes en "bottom-up "et pas "top-down". Càd que tu commences par coder de petites fonctions de bas niveau, tu t'amuses un peu avec pour vérifier que tout marche, puis tu les combines dans des fonctions plus grandes, jusqu'à arriver à ce que tu veux (je dis fonctions mais en Smalltalk on parleras plus d'objets et de méthodes... mon habitude du CL qui ressort ;-) )
PS: j'ai pas l'url pour Cincom Smalltalk, mais ça se trouve facilement.