¿Está colapsando C ++ 0x bajo el peso de las nuevas funciones y el proceso de estandarización?

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

  •  05-07-2019
  •  | 
  •  

Pregunta

De Dr. Dobbs :

  

Los conceptos debían haber sido los centrales   nueva característica en C ++ 0x

     

Incluso después de cortar " conceptos, " la   El siguiente estándar de C ++ puede retrasarse.   Lamentablemente, no habrá C ++ 0x (a menos que   cuentas las correcciones menores en   C ++ 03). Debemos esperar a C ++ 1x, y   Espero que 'x' sea un dígito bajo.   Hay esperanza porque C ++ 1x es ahora   característica completa (excepto el   Posibilidad de algunos estándares nacionales.   cuerpos efectivamente insistiendo en algunos   Rasgo presente en la propuesta formal.   para la norma). " Todos " eso queda   Es el trabajo masivo de resolver.   Cuestiones técnicas pendientes y   comentarios.

Estaba a la vanguardia de la programación de C ++ segura para MT y MP alrededor de 1997 - 2000. Tuvimos que hacer muchas cosas por nosotros mismos. Es un poco sorprendente que el estándar no haya abordado la concurrencia en los 9 años posteriores.

Entonces, ¿cuál es el problema?

¿Fue útil?

Solución

Stroustrup fue uno de los votantes que finalmente eliminó Conceptos. No veo a C ++ colapsando , en cambio veo que el comité de C ++ está haciendo su trabajo. Las características a medias no son la solución para un lenguaje robusto como C ++. Una mirada a lo que será en C ++ 0x le dice lo contrario de lo que está diciendo. Por último, no me importa esperar para obtener algo bueno para siempre , en lugar de algo bueno por un tiempo :)

Otros consejos

No.

No estoy seguro de lo que te hace pensar que lo es. El artículo de Dr.Dobbs no implica que sea el caso.

Es una gran actualización, lo que significa mucho trabajo para pulir las especificaciones del idioma y corregir errores. Eso no es nuevo ni sorprendente.

Y el proceso de estandarización ISO lleva tiempo. Eso tampoco es nuevo. El artículo que publicaste dice precisamente eso: hay trabajo por hacer, pero el cielo no se está cayendo, es un trabajo bastante básico y de bajo riesgo que estarán haciendo a partir de ahora.

Hay un par de razones por las que se ha tardado tanto:

Lo obvio es que están haciendo muchos cambios, y algunas características resultaron más grandes de lo esperado, y tuvieron que ser eliminadas. Eso no hace falta decirlo y es responsable de los retrasos.

El factor menos obvio, pero igual de importante, es que deseaban mucho tiempo desde C ++ 98. Querían darle tiempo al lenguaje para estabilizarse y madurar, obtener mucha experiencia de uso con las características del lenguaje actual y darles tiempo a los compiladores para ponerse al día. Hasta hace unos años, C ++ no estaba listo para ser actualizado. Los grandes compiladores comerciales seguían siendo un desastre, y mucha gente todavía no se sentía cómoda con el diseño moderno de C ++.

Es por eso que cosas como el multihilo no se han abordado hasta ahora. No lo hizo en C ++ 98, y no querían hacer cambios demasiado pronto después de eso.

No sé a qué año esperaban apuntar originalmente, pero dudo que fuera anterior a 2007 o algo así. Así que sí, el nuevo estándar se ha retrasado un poco, pero no porque el idioma esté colapsando "

No, solo son conscientes de la responsabilidad que tienen. Hay muchas personas afectadas por las decisiones del comité estándar.

Por un lado, estoy agradecido de que no estén repitiendo el fiasco de exportaciones de plantillas.
Por otro lado, el mismo tipo de " responsabilidad " podría haber eliminado las plantillas por completo antes de que sucedieran.

Creo que C ++ 0x está demostrando que C ++ es un lenguaje demasiado maduro como para experimentar con funciones todavía. Las nuevas funciones de vanguardia ya están presentes en otros idiomas en los que coinciden mejor con la filosofía subyacente.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top