Le langage de programmation C n'est peut-être pas omniprésent, mais il l'est de manière subtile. Lorsque vous démarrez votre voiture, sa carte mère utilise probablement le C pour communiquer avec ses différents composants. Lorsque vous utilisez votre téléphone, qu'il fonctionne sous iOS ou Android, le cœur du système d'exploitation est écrit en C. On ne peut ignorer le langage C.

D'accord. Mauvais jeu de mots. Mais quelle est l'histoire de la lettre C ? Lorsque le langage de programmation C est apparu, il a révolutionné le monde. Mais pourquoi l'a-t-on appelé C ?
Liens rapides
Il était une fois, dans les laboratoires Bell…
Des esprits brillants et des budgets colossaux

Pour répondre à cette question, il nous faut remonter le temps et nous intéresser à un bâtiment modeste mais immense situé dans le New Jersey : les Laboratoires Bell. Fondés par Alexander Graham Bell (ce nom vous dit quelque chose ?) et appartenant alors à AT&T – qui était, de fait, un monopole d’État –, les Laboratoires Bell bénéficiaient d’un budget conséquent et de la liberté d’expérimenter et de développer de nouvelles idées.
Cette approche non invasive a mené à l'invention du transistor (ce qui explique pourquoi les ordinateurs ne sont plus aussi volumineux que des pâtés de maisons), des lasers et des cellules solaires, pour n'en citer que quelques-uns. Le langage de programmation C est également un produit des légendaires laboratoires Bell. Mais avant le C, il y avait le B.
Il existait une langue B
B pour une meilleure BCPL

En 1969, Ken Thompson, chercheur brillant et d'une remarquable indépendance chez Bell Labs, travaillait sur un projet de système d'exploitation colossal et extravagant appelé Multics. Lorsque Bell Labs abandonna le projet Multics, Thompson se retrouva avec du temps libre et un problème bien précis : il voulait jouer à un jeu qu'elle avait écrit. Voyage dans l'espace Sur un vieux ordinateur DEC PDP-7 poussiéreux qui traînait dans le couloir.

Le PDP-7 étaitL'image se trouve à droite.Il était obsolète même pour les normes des années 1960. Il disposait de très peu de mémoire (environ 8 kilo-octets). Pour faire fonctionner son jeu sur le PDP-7, Thompson a créé un nouveau système d'exploitation de A à Z. C'est ainsi qu'est né Unix. Cependant, écrire Unix dans le langage code assembleur (Ce langage brut et primitif qui communique avec les machines à l'aide de 1 et de 0) était un cauchemar. Thompson avait besoin d'un langage de haut niveau, quelque chose de plus proche de la logique humaine.
À cette époque, le langage de programmation de haut niveau le plus utilisé était le BCPL (Basic Combined Programming Language). Trop volumineux pour le matériel limité du PDP-7, le BCPL fut simplifié par Thompson qui créa un nouveau langage : le B. Rapide et simple, ce langage constitua le premier pas vers la programmation moderne.

Cependant, le langage B était voué à l'échec. Il fonctionnait bien avec le PDP-7, mais lorsque Bell Labs est passé au PDP-11, plus performant, un langage non typé comme B n'était plus suffisant. Il était inefficace et ralentissait considérablement le nouveau et coûteux PDP-11.
C est devenu le nouveau B
B a obtenu une promotion

Ceci nous amène à Dennis Ritchie, ami proche et collaborateur de Thompson. Ritchie comprit que pour qu'Unix puisse survivre sur les machines plus récentes, le langage dans lequel il était écrit devait évoluer ; il consacra donc deux ans à travailler sur B pour y remédier.
Son innovation majeure fut l'introduction du système de types. Il créa le type `char` pour les caractères et le type `int` pour les entiers. Désormais, le programmeur pouvait indiquer à l'ordinateur qu'une case représentait un seul caractère, évitant ainsi le gaspillage d'espace. Le programme devenait ainsi plus maniable.

Pendant un temps, Ritchie et Thompson ont simplement appelé ce projet « Nouveau B ». Mais à mesure que le langage gagnait en importance et en vigueur, ils ont compris qu'il méritait sa propre identité. Comme il succédait au langage B, ils se sont tournés vers la lettre suivante de l'alphabet et l'ont nommé C.
En 1973, Ritchie et Thompson ont réécrit le cœur du système d'exploitation Unix en C. Auparavant, les systèmes d'exploitation étaient toujours écrits en langage assembleur, car on considérait généralement que les langages de haut niveau étaient trop lents. Le C a démenti cette idée reçue. Il était rapide, élégant et, surtout, portable.
…puis D est arrivé
Ou quoi?

À la fin des années 1970, le C régnait en maître. Mais avec la complexification croissante des logiciels, il commença à montrer des signes de vieillissement. Bjarne Stroustrup, chercheur aux Bell Labs, appréciait la rapidité du C, mais souhaitait y intégrer le concept de « programmation orientée objet ». En clair, il voulait permettre aux programmeurs de collecter des données et de se connecter à des « objets », comme un objet « utilisateur » doté d'un nom d'utilisateur et d'un mot de passe.

Quand le moment fut venu pour Stroustrup (Vous le verrez dans son bureau, à gauche.Après avoir nommé son invention, la suite logique aurait été D. Mais les gens des Bell Labs appréciaient les jeux de mots. Maschetti, un collègue de Stroustrop, suggéra donc C++. À leurs yeux, du moins, c'était un coup de génie. Cela sous-entendait que le langage était du C, mais enrichi d'un C. Le C était Mais mieux.
Ce choix de nom était si séduisant que la position D dans l'ordre alphabétique est restée vide pendant près de vingt ans. Le C++ est devenu la norme pour tout, des jeux vidéo aux navigateurs web, et le monde a simplement évolué. Si vous ne savez pas, en C, comment incrémenter un nombre de un, vous utilisez une commande spéciale : ++Si vous avez une variable x Et elle a écrit x++Il deviendra x + 1.
Le langage D existe déjà.
Mais il est apparu des décennies plus tard

Ce n'est qu'en 2001 que Walter Bright, ingénieur chevronné en systèmes de commutation, décida enfin de revendiquer ce titre. Bright avait passé des années à développer des outils C++ et était frustré par l'immensité et l'insécurité du langage, qui devait rester compatible avec du code hérité des années 1970.
Il recherchait la puissance brute du C et les fonctionnalités organisationnelles du C++, mais avec une conception moderne, épurée et infaillible. Il créa donc le langage de programmation D. Le D offrait une meilleure gestion de la mémoire et des fonctions de sécurité qui empêchaient les erreurs à l'origine de l'écran bleu de la mort sur un ordinateur.
Malgré ses succès, D se heurta à un problème classique : à son apparition, le monde avait déjà évolué. Les entreprises utilisaient Java et C#, et le monde restait fermement ancré dans C et C++. Quelques années plus tard, un langage nommé Rust fit son apparition, mettant l’accent sur l’intégrité de la mémoire (le même principe que D), et parvint à captiver le monde de la technologie d’une manière que D ne réussit jamais vraiment à faire, rendant ainsi D obsolète.
Aujourd'hui, D est un langage spécialisé très respecté. Il est déjà utilisé par des entreprises comme Netflix et eBay pour des tâches spécifiques et exigeantes. C'est un excellent langage, mais il n'a jamais dominé le marché.
Existait-il une langue A ?
Oui, mais… pas vraiment
D'accord. Nous savons maintenant que C est C parce qu'il provient de B. Mais existait-il un langage A antérieur à B ? La réponse est oui, mais pas comme on pourrait le croire. En effet, il n'existait pas de langage A formel avant ces langages. Certes, C est devenu C parce qu'il est apparu après B. Mais B est devenu B parce que c'était la première lettre de BCPL, et non parce qu'il est apparu après A.

Cependant, si l'on remonte correctement à la généalogie, l'histoire commence bien avant les laboratoires Bell. Bien avant B ou C, il y avait ALGOL. ALGOL, acronyme de « Algorithmic Language » (langage algorithmique), a vu le jour en 1958. Il n'était pas l'œuvre d'un seul homme, mais d'un comité de scientifiques européens et américains désireux de disposer d'une méthode universelle pour décrire les opérations mathématiques. Si l'on cherche l'ancêtre de la notation moderne – le véritable « A » au sommet de la pyramide –, c'est bien ALGOL.
Un langage appelé CPL (Combined Programming Language) fut créé à partir des idées d'ALGOL, mais il était trop complexe pour les machines de l'époque. Cela mena à une version « basique » de CPL, appelée BCPL. Et c'est là que commence notre histoire chez Bell Labs.
Aujourd'hui, en 2026, nous vivons encore à l'ère du C. Même les langages modernes et sophistiqués comme Python ou JavaScript sont généralement interprétés par des programmes écrits en C. Le C demeure le langage fondamental. Né dans un laboratoire du New Jersey pour permettre à quelqu'un de jouer à un jeu spatial sur un ordinateur qui était en réalité une calculatrice géante.










