Emacs

L’AI Lab (en) du MIT possédait TECO dans les années 1970, un éditeur de texte fonctionnant en arrière-plan. La modification du texte nécessitait de longues chaînes de commandes, c’est-à-dire une capacité d’abstraction assez importante de la part de l’utilisateur. En 1976, Stallman découvrit « E » au laboratoire d’intelligence artificielle de l’Université Stanford, considéré comme le premier logiciel de traitement de texte WYSIWYG permettant de voir à l’écran en temps réel les modifications apportées. Il décide alors d’améliorer TECO pour lui apporter les mêmes fonctionnalités. Il implémenta des combinaisons de touche + qui exécutent des chaînes de commandes TECO. Cette amélioration permit ainsi aux hackers de sauvegarder des chaînes de commande longues et complexes et d’y faire appel avec un simple raccourci clavier. Cette version augmentée de TECO conduisit les hackers du AI Lab à programmer une quantité énorme de macros. Cette profusion et diversité de macros personnelles commencèrent à rendre l’utilisation de TECO différente sur chaque terminal, avec des incompatibilités et un temps d’apprentissage de plus en plus long quand on changeait de terminal. Avec Guy Steele, Richard Stallman entreprit de réorganiser toutes les commandes en un système unifié et plus universel. Le résultat fut baptisé « Emacs », acronyme pour Editing Macros. Il est toujours possible d’ajouter de nouvelles commandes, mais elles n’affectent plus le logiciel original, qui reste identique pour tous les utilisateurs. Stallman écrivit une règle dans le code source : les utilisateurs étaient libres de modifier et de redistribuer le code, à la condition de redonner en retour à la communauté les extensions qu’ils écrivaient. Il passe ainsi un contrat social avec tous les hackers qui apporteront une macro à l’édifice. En ce sens, le projet Emacs peut être considéré comme emblématique de l’esprit communautaire qui règne alors dans le AI Lab6.

Richard Stallman