Activa las notificaciones para estar al tanto de lo más nuevo en tecnología.

gnu

Los compiladores de lenguajes populares buscan muchas veces ser transparentes al sistema operativo que usan, pues eso daría las facilidades adecuadas para portar fácilmente programas de un sistema operativo a otro. Esta idea de la portabilidad es lo ideal: escríbase una vez, córrase en todas las plataformas.  Sin embargo, esto es más una buena intención que realidad. No obstante, los desarrolladores hacen interesantes esfuerzos en esta materia.

La colección de compiladores de GNU (GCC) se ha implementado en su totalidad en C++ siguiendo la salida de la versión 4.8.0 de GCC. La nueva versión añade mejoras en el desempeño y nuevas herramientas. Moverse a C++se ha intentado por algunos años y el equipo detrás de GCC da las siguientes razones para realizar este trabajo:

  • C++ es un lenguaje bien conocido, popular y estándar
  • C++ es casi un superconjuinto de C90 usado en GCC
  • El subconjunto de C de C++ es tan eficiente como C
  • C++ soporta código más limpio en muchos casos significativos
  • C++ hace más fácil escribir y forzar interfaces más limpias
  • C++ no requiere jamás de escribir código feo
  • C++ no es la panacea, pero es una mejora, sin duda

Al mismo tiempo que GCC se mueve a C++, la nueva versión tiene un nuevo nivel general de optimización (-Og), que de acuerdo a los cambios ayuda a una compilación más rápida y a una experiencia en la depuración de código superior, mientras que se da un nivel razonable de desempeño en tiempo de ejecución.

Se tiene además ahora el detector de error AddressSanitizer, que se ha añadido a la nueva versión, junto con la herramienta ThreadSanitizer.

Referencias:

GCC (wiki)
Código fuente de GCC 4.8.0

Desde la Red…
Comentarios