Bjarne Stroudrup explique comment le langage C++ s'épanouit dans un monde changeant
lun, 22/06/2020 - 17:16
Si vous aimez le langage de programmation C++, ou olus généralement si la génèse d'un langage et son évolution vous intéresse, ne manquez cet imposant texte de 168 pages écrit par le créateur de C++, Blarne Stroustrup lui-même : Thriving in a Crowded and ChangingWorld: C++ 2006–2020 ou S'épanouir dans un monde surpeuplé et changeant - C++ 2006 - 2020.
Si le document, comme son titre l'indique, se focalise plus particulièrement sur les années 2006 à 2020, toute la genèse du langage y est, depuis les premiers travaux sur le 'C avec des classes' dès 1979.
Mais au fait, Pourquoi C++ ? Bjarne Stroustrup répond :
A l'origine, j'ai conçu C ++ pour répondre à la question 'Comment manipulez-vous directement le matériel et prennez également en charge une abstraction de haut niveau efficace?' Au fil des ans, le C ++ est passé d'une solution relativement simple basée sur une combinaison des langages C et Simula visant à la programmation des systèmes sur les ordinateurs des années 1980, à un outil beaucoup plus complexe et efficace pour une gamme extraordinaire d'applications. Il conserve son double objectif:
- Mappage direct des constructions de langage sur le matérielle
- Abstraction sans surcharge à l'exécution
Cette combinaison est la caractéristique qui distingue le C ++ de la plupart des langages.
Mais un langage doit évoluer en fonction des besoins et des changements du monde. Le comité de normalisation de C++ est là pour cela. Bjarne Stoustrup l'évoque:
La norme ISO C ++ évolue à travers un processus de consensus. Inévitablement, il y a une concurrence entre les propositions et les affrontements (généralement polis) sur la direction, les philosophies de conception et les principes. Le comité est maintenant plus grand et plus actif que jamais, avec jusqu'à 250 personnes se réunissant pour des réunions d'une semaine trois fois par an et beaucoup d'autres y participant par voie électronique. Nous essayons (pas toujours avec succès) d'atténuer les effets de la conception par comité, de la paralysie bureaucratique et de l'enthousiasme excessif pour une variété de modes linguistiques.
C'est ainsi, pour prendre un seul et tout petit exemple, que la programmation parallèle et concurrente a trouvé sa place dans le standard C++.
Un document passionnant, à ne pas manquer.