C ++ 0x sta crollando sotto il peso delle nuove funzionalità e del processo di standardizzazione?

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

  •  05-07-2019
  •  | 
  •  

Domanda

Da Dr. Dobbs :

  

I concetti dovevano essere al centro   nuova funzionalità in C ++ 0x

     

Anche dopo aver tagliato i concetti "," il   il prossimo standard C ++ potrebbe essere ritardato.   Purtroppo, non ci sarà C ++ 0x (a meno che   conti le correzioni minori in   C ++ 03). Dobbiamo aspettare C ++ 1x e   spero che 'x' sia una cifra bassa.   C'è speranza perché C ++ 1x è adesso   funzione completa (eccetto il   possibilità di alcuni standard nazionali   corpi che insistono efficacemente su alcuni   caratteristica presente nella proposta formale   per lo standard). & Quot; Tutti " quello è rimasto   è l'enorme lavoro di risoluzione   problemi tecnici eccezionali e   commenti.

Ero al limite della programmazione C ++ sicura per MT e MP tra il 1997 e il 2000. Abbiamo dovuto fare molte cose da soli. È un po 'scioccante che lo standard non abbia affrontato la concorrenza nei 9 anni successivi.

Quindi qual è il grosso problema?

È stato utile?

Soluzione

Stroustrup è stato uno degli elettori a rimuovere finalmente Concetti. Non vedo Cem crollare , invece vedo che il comitato C ++ sta facendo il suo lavoro. Le funzionalità a metà non sono la soluzione per un linguaggio robusto come il C ++. Uno sguardo a quello che sarà in C ++ 0x ti dice il contrario di quello che stai dicendo. Infine, non mi dispiace aspettare di ottenere qualcosa di buono per sempre , invece di qualcosa di buono per un po ' :)

Altri suggerimenti

No.

Non sono sicuro di cosa ti faccia pensare. L'articolo di Dr.Dobbs non implica che sia così.

È un grande aggiornamento, il che significa molto lavoro per perfezionare le specifiche della lingua e correggere gli errori. Non è né nuovo né sorprendente.

E il processo di standardizzazione ISO richiede tempo. Neanche questo è nuovo. L'articolo che hai pubblicato dice proprio questo: c'è del lavoro da fare, ma il cielo non sta cadendo, è un lavoro piuttosto semplice e a basso rischio che faranno da ora in poi.

Ci sono un paio di ragioni per cui ci è voluto così tanto tempo:

L'ovvio è che stanno apportando molte modifiche e alcune funzionalità si sono rivelate più grandi del previsto e hanno dovuto essere tagliate. Questo è ovvio ed è responsabile dei ritardi.

Il fattore meno ovvio, ma altrettanto importante è che volevano passare molto tempo dal C ++ 98. Volevano dare al linguaggio il tempo di stabilizzarsi e maturare, fare molta esperienza d'uso con le caratteristiche del linguaggio attuali e dare ai compilatori il tempo di aggiornarsi. Fino a qualche anno fa, C ++ non era pronto per essere aggiornato. I grandi compilatori commerciali erano ancora un disastro e troppe persone non erano ancora a proprio agio con il moderno design C ++.

Ecco perché cose come il multithreading non sono state affrontate fino ad ora. Non è stato realizzato in C ++ 98 e non hanno voluto apportare modifiche troppo presto.

Non so in quale anno speravano inizialmente di puntare, ma dubito che sia stato prima del 2007 o giù di lì. Quindi sì, il nuovo standard è stato leggermente ritardato, ma non perché la lingua sta "crollando".

No, sono solo consapevoli della responsabilità che hanno. Ci sono molte persone interessate dalle decisioni del comitato standard.

Da un lato sono grato che non stiano ripetendo il modello di esportazione fiasco.
D'altra parte lo stesso tipo di "responsabilità" avrebbe potuto uccidere del tutto i modelli prima che accadessero.

Penso che C ++ 0x stia dimostrando che C ++ è un linguaggio troppo maturo per sperimentare ancora funzionalità. Nuove funzionalità all'avanguardia sono già presenti in altre lingue in cui si adattano meglio alla filosofia di base.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top