C ++ 0x se réduit-il sous le poids des nouvelles fonctionnalités et du processus de normalisation?

StackOverflow https://stackoverflow.com/questions/1204693

  •  05-07-2019
  •  | 
  •  

Question

De Dr. Dobbs :

  

Les concepts devaient être au centre   nouvelle fonctionnalité en C ++ 0x

     

Même après avoir coupé les "concepts", " la   La prochaine norme C ++ peut être retardée.   Malheureusement, il n’y aura pas de C ++ 0x (à moins que   vous comptez les corrections mineures dans   C ++ 03). Nous devons attendre C ++ 1x, et   espère que 'x' sera un chiffre bas.   Il y a de l'espoir car C ++ 1x est maintenant   fonction complète (à l'exception du   possibilité de quelques normes nationales   corps insistant efficacement sur certains   fonctionnalité présente dans la proposition formelle   pour le standard). " Tous " cela reste   est le travail massif de résolution   questions techniques en suspens et   commentaires.

J'étais à la pointe de la programmation C ++ sûre pour MT et MP vers 1997 - 2000. Nous devions faire beaucoup de choses nous-mêmes. Il est un peu choquant de constater que la norme n’a pas traité de la simultanéité au cours des neuf dernières années.

Alors, quel est le problème?

Était-ce utile?

La solution

Stroustrup était l’un des électeurs à avoir finalement éliminé Concepts. Je ne vois pas C ++ réduire , je vois plutôt que le comité C ++ fait son travail. Les fonctionnalités à moitié cuites ne sont pas la solution pour un langage robuste comme le C ++. Un regard sur ce qui va se passer en C ++ 0x vous indique le contraire de ce que vous dites. Enfin, cela ne me dérange pas d'attendre de trouver quelque chose de bon pour toujours , au lieu de quelque chose de bon pendant un certain temps :)

Autres conseils

Non.

Je ne sais pas ce qui vous fait penser. L'article de Dr.Dobbs n'implique pas que c'est le cas.

C’est une grosse mise à jour, ce qui signifie beaucoup de travail pour peaufiner les spécifications de langue et corriger les erreurs. Ce n'est ni nouveau ni surprenant.

Et le processus de normalisation ISO prend du temps. Ce n'est pas nouveau non plus. L'article que vous avez posté dit justement que - il reste du travail à faire, mais le ciel ne s'effondre pas, c'est un travail assez basique et à faible risque qu'ils vont faire à partir de maintenant.

Il y a plusieurs raisons pour lesquelles cela a pris si longtemps:

Ce qui est évident, c’est qu’ils font beaucoup de changements et que quelques fonctionnalités ont été plus volumineuses que prévu et ont dû être supprimées. Cela va sans dire et est responsable des retards.

Le facteur moins évident, mais tout aussi important, est le fait qu'ils voulaient attendre longtemps depuis C ++ 98. Ils voulaient laisser le temps au langage de se stabiliser et de mûrir, d'acquérir une grande expérience d'utilisation des fonctionnalités du langage actuel et de donner aux compilateurs le temps de se mettre à niveau. Jusqu'à il y a quelques années, C ++ n'était tout simplement pas prêt à être mis à jour. Les gros compilateurs commerciaux étaient toujours en désordre et trop de gens n’étaient toujours pas à l'aise avec le design C ++ moderne.

C'est pourquoi des problèmes tels que le multithreading n'ont pas été abordés jusqu'à présent. Cela n’a pas été possible en C ++ 98 et ils ne voulaient pas apporter de modifications trop tôt.

Je ne sais pas quelle année ils espéraient initialement cibler, mais je doute que ce soit avant 2007 ou à peu près. Donc oui, la nouvelle norme a été retardée un peu, mais pas parce que le langage est "en train de",

.

Non, ils sont juste conscients de leur responsabilité. De nombreuses personnes sont touchées par les décisions du comité standard.

D'une part, je suis reconnaissant qu'ils ne répètent pas le fiasco des exportations de modèles.
Par contre, le même genre de "responsabilité" aurait pu tuer tous les modèles avant qu'ils ne se produisent.

Je pense que C ++ 0x démontre que C ++ est un langage trop mature pour expérimenter encore avec des fonctionnalités. De nouvelles fonctionnalités de pointe sont déjà présentes dans d'autres langues où elles correspondent mieux à la philosophie sous-jacente.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top