> On peut aussi noter que C++ est [une] application bizarre du Worse is Better.
C'est curieux, j'avais lu l'article original[0] de Richard P. Gabriel décrivant le principe et C++ ne me semble pas du tout rentrer dans la catégorie "Worse is better". Explications: R.P. Gabriel était un lisper et se gargarisait d'utiliser des interpréteurs/systèmes d'exploitation en Lisp aux fonctionnalités top-moumoutes alors que les développeurs d'Unix se contentaient juste de faire fonctionner la machine, sans porter grande attention aux cas extrêmes (comment mon programme va réagir si un interrupt intervient en plein milieu d'une communication avec un périphérique externe et chamboule par là-même tous mes registres ?).
D'où l'expression "le pire est meilleur" : Unix ne gérait certes pas correctement les interrupts et avait donc moins de fonctionnalités mais il était plus simple à comprendre / coder et était utilisable là, de suite.
Du coup, C ou Java, qui simplifient certains principes à l'extrême (genre pas de tail-call-optimisation et obligation de construire soi-même son trampoline, gestion de la mémoire incompréhensible "pour votre bien", etc. ) correspondent bien mieux à la définition du "worse is better".
C++, bien qu'imparfait, s'efforce quand même de codifier et de fournir des outils pour gérer milles et un cas d'utilisations ésotériques (multiples smart-pointers, un pour chaque jour du mois, multiples possibilités niveaux héritages, un bon gros paquet de conteneurs et des opportunités de migraines infinies via les templates).
Non, non, si quelqu'un cherche un langage a accroché au fronton du hall "worse is better", qu'il commence avec PHP ou bash, mais pas avec C++.
# "Worse" is /not/ C++
Posté par Johands . En réponse au journal C++ a été créé pour augmenter le salaire des programmeurs. Évalué à 5.
C'est curieux, j'avais lu l'article original[0] de Richard P. Gabriel décrivant le principe et C++ ne me semble pas du tout rentrer dans la catégorie "Worse is better". Explications: R.P. Gabriel était un lisper et se gargarisait d'utiliser des interpréteurs/systèmes d'exploitation en Lisp aux fonctionnalités top-moumoutes alors que les développeurs d'Unix se contentaient juste de faire fonctionner la machine, sans porter grande attention aux cas extrêmes (comment mon programme va réagir si un interrupt intervient en plein milieu d'une communication avec un périphérique externe et chamboule par là-même tous mes registres ?).
D'où l'expression "le pire est meilleur" : Unix ne gérait certes pas correctement les interrupts et avait donc moins de fonctionnalités mais il était plus simple à comprendre / coder et était utilisable là, de suite.
Du coup, C ou Java, qui simplifient certains principes à l'extrême (genre pas de tail-call-optimisation et obligation de construire soi-même son trampoline, gestion de la mémoire incompréhensible "pour votre bien", etc. ) correspondent bien mieux à la définition du "worse is better".
C++, bien qu'imparfait, s'efforce quand même de codifier et de fournir des outils pour gérer milles et un cas d'utilisations ésotériques (multiples smart-pointers, un pour chaque jour du mois, multiples possibilités niveaux héritages, un bon gros paquet de conteneurs et des opportunités de migraines infinies via les templates).
Non, non, si quelqu'un cherche un langage a accroché au fronton du hall "worse is better", qu'il commence avec PHP ou bash, mais pas avec C++.
[0] pour ceux qui auraient raté leur culture "wanabee-hacker", ça ce passe là-bas : [http://dreamsongs.com/WIB.html].