smalltalk
Le langage qui a tout inventé (mais que personne n’a utilisé)
Si je te dis programmation orientée objet, tu penses à quoi ?
Java ? C++ ? Python ?
Raté. Tout ça vient de Smalltalk.
Années 70 : Xerox invente le futur (et l’oublie dans un tiroir)
À l’époque, la programmation, c’est encore ultra procédural.
Pas de classes, pas d’objets, pas d’héritage.
Juste des lignes de code qui s’enchaînent.
Et là, au Xerox PARC, Alan Kay et son équipe décident de changer la donne.
Ils inventent Smalltalk, un langage où tout est objet.
- 🟢 Un bouton ? Un objet.
- 🟢 Une fenêtre ? Un objet.
- 🟢 Une chaîne de caractères ? Un objet.
Tout interagit via des messages.
T’écris pas “fais cette action”, tu envoies un message à un objet, et il décide quoi faire.
Ça paraît normal aujourd’hui.
Mais à l’époque, c’était de la science-fiction.
Ce que Smalltalk a inventé 💡
- ✅ L’orienté objet tel qu’on le connaît aujourd’hui.
Sans Smalltalk, pas de Java, pas de Python, pas de Ruby. - ✅ L’interface graphique moderne.
Les fenêtres, les icônes, les menus déroulants, la souris… tout ça est né dans l’environnement Smalltalk. - ✅ L’IDE interactif.
Tu pouvais modifier ton programme en direct, sans tout recompiler. Une révolution.
Pourquoi Smalltalk a échoué ? 🤔
- ❌ Xerox n’a rien compris.
Comme avec l’interface graphique (piquée par Apple et Microsoft), ils ont inventé le futur, mais sans le vendre correctement. - ❌ Trop en avance sur son temps.
Dans les années 80, les machines n’étaient pas assez puissantes pour supporter un langage aussi dynamique. - ❌ Un écosystème fermé.
Alors que C et UNIX dominaient, Smalltalk restait dans son coin.
Et aujourd’hui ?
Smalltalk, c’est un peu le grand-père oublié.
Son influence est partout, mais lui-même est resté une niche.
Quelques passionnés l’utilisent encore, et certains concepts (comme les environnements interactifs) reviennent avec Python ou Lisp.
Mais sinon, Smalltalk a surtout servi de plan pour l’avenir, sans jamais vraiment exister dans le présent.
👉 T’en avais déjà entendu parler ? Ou tu pensais que l’objet était né avec Java ? 😏