reproches plus controversées (initialiser par défaut les variables, avoir par défaut une vérification des débordement entier, de tableau (désactivable localement/globalement)).
Effectivement, c'est controversable. Si on considère le C comme un assembleur portable (ce qu'il est en fait :) et non comme un langage "généraliste". Pour moi, l'initialisation par défaut des variables automatiques n'a plus de sens de nos jours : elle n'est pas toujours nécessaire, et le compilateur détecte très souvent les cas litigieux. La vérification des débordements d'entier, c'est déja un plus, mais devoir automatiser ce genre de contrôle dénote souvent un problème d'analyse.
Quand au débordement de tableaux, oui, des efforts sont faits sur les chaines de caractères, qui sont, depuis le début de l'epoch, un souci permanent.
Le cast est une opération "dangereuse": il faut pouvoir les identifier facilement(grep). Et avec la syntaxe actuelle ce n'est pas possible.
Le cast est peut-être dangereux, et c'est vrai que greper un cast, à première vue, ce n'est pas évident :) je vais voir ça après le déjeuner...
Qu'il a le mauvais comportement par défaut: si tu oublie de mettre un break (nécessaire dans 99% des cas), [snip] 3 mots clef: new_switch, new_case, goto_next,
Personnellement, je trouve qu'il a le bon comportement par défaut : il permet de regrouper de façon naturelle les cas qui doivent déclencher les mêmes actions. Quand à ces trois nouveaux mots-clef, je t'invite à poster un exemple complet de mise en oeuvre, juste pour avoir les idées plus claires.
c'est comme l'histoire de faire des macros pour faire ressembler C au Pascal..
[^] # Re: Mes idéaux
Posté par Tonton Th (site web personnel, Mastodon) . En réponse au journal Votre langage idéal ?. Évalué à 2.
Effectivement, c'est controversable. Si on considère le C comme un assembleur portable (ce qu'il est en fait :) et non comme un langage "généraliste". Pour moi, l'initialisation par défaut des variables automatiques n'a plus de sens de nos jours : elle n'est pas toujours nécessaire, et le compilateur détecte très souvent les cas litigieux. La vérification des débordements d'entier, c'est déja un plus, mais devoir automatiser ce genre de contrôle dénote souvent un problème d'analyse.
Quand au débordement de tableaux, oui, des efforts sont faits sur les chaines de caractères, qui sont, depuis le début de l'epoch, un souci permanent.
Le cast est peut-être dangereux, et c'est vrai que greper un cast, à première vue, ce n'est pas évident :) je vais voir ça après le déjeuner...
Personnellement, je trouve qu'il a le bon comportement par défaut : il permet de regrouper de façon naturelle les cas qui doivent déclencher les mêmes actions. Quand à ces trois nouveaux mots-clef, je t'invite à poster un exemple complet de mise en oeuvre, juste pour avoir les idées plus claires.
Arf, on a dû avoir le même professeur de C :)