Blog

El pasado mes de julio, el ingeniero de Google Chandler Carruth dio a conocer en Toronto un nuevo lenguaje de programación con el nombre de Carbon. Un lenguaje experimental de propósito general.

Una alternativa al popular C++, como dicen muchos.

C++ fue creado por el danés Bjarne Stroustrup. Empezó en 1979 con la intención de mejorar el lenguaje C y hacerlo más rápido y práctico para sus necesidades mientras trabajaba en AT&T Bell Labs en tareas relacionadas con UNIX.

Desde entonces, C++ siempre ha estado, más arriba o más abajo, entre los lenguajes de programación más utilizados en todo el mundo.

A lo largo de los años, Google ha creado diversos lenguajes de programación, algunos de los cuales se han hecho más populares como es Golang (o simplemente Go) se creó en 2009 con el propósito de centrarse en servidores y sistemas distribuidos hasta llegar a ser adoptado por el público. Por su parte, el lenguaje de programación Dart, originalmente pensado como una especie de alternativa a JavaScript para la web, no alcanzó popularidad hasta el lanzamiento de Flutter.

Características de Carbon

Aunque Carbon tiene muchos de los mismos objetivos que Rust, como ayudar a los desarrolladores a crear “software de rendimiento crítico“, Carbon también pretende ser totalmente interoperable con el código C++. Además, el objetivo es hacer que la migración de C++ a Carbon sea lo más fácil posible.

Carruth compartió algunos aspectos destacados de este lenguaje de programación. Entre otros:

  • Palabras clave de introducción y una gramática sencilla
  • Los parámetros de entrada de las funciones son valores de sólo lectura
  • Importar APIs a través de su nombre de paquete
  • Los tipos implementan explícitamente las interfaces
+ Noticias   Tendencias en terraza. El estilo mediterráneo.

Aunque Carbon se inició en Google, el equipo considera que para que tenga algún éxito en el futuro, Carbon necesita ser “un proyecto independiente e impulsado por la comunidad”, no sólo impulsado por los propios usos de Google. Carbon es actualmente sólo un experimento. De hecho, los desarrolladores interesados pueden descargar el código fuente y experimentar con él en sus dispositivos.

El objetivo de Carbon es ofrecer una curva de aprendizaje suave a los desarrolladores de C++, con un conjunto estándar y coherente de construcciones del lenguaje. Además de la interoperabilidad entre Carbon y C++, Google también admitirá herramientas de migración que convertirán automáticamente el código C++ existente en código Carbon.

Carbon trata de abordar la seguridad de la memoria, un problema clave que afecta a C++, mediante:

•    Mejora en el rastreo de los estados no inicializados, aumentando la aplicación de la inicialización y endureciendo contra los errores de inicialización.

•    Diseño de APIs y modismos fundamentales para soportar comprobaciones de límites dinámicos en construcciones de depuración y endurecidas.

•    Tener un modo de compilación de depuración por defecto que sea más completo que los modos de compilación existentes de C++.

Aspectos destacados del lenguaje Carbon en el escenario.

•    Palabras clave de introducción y una gramática sencilla

•    Los parámetros de entrada de las funciones son valores de sólo lectura

•    Los punteros proporcionan acceso indirecto y mutación

•    Uso de expresiones para nombrar tipos

•    El paquete es el espacio de nombres raíz

•    Importar APIs a través de su nombre de paquete

•    El parámetro explícito del objeto declara un método

+ Noticias   Cannes 2022: la alfombra roja.

•    Herencia única; las clases son finales por defecto

•    Potentes genéricos de definición comprobada

•    Los tipos implementan explícitamente las interfaces

Aunque Carbon se inició en el seno de Google, el equipo entiende y ha compartido en línea que, para que tenga algún éxito en el futuro, Carbon necesita ser “un proyecto independiente e impulsado por la comunidad”, y no sólo por los propios usos de Google. En el mismo comentario, Carruth subraya además que Carbon no es más que un experimento, aunque algunas empresas ya han mostrado su interés.

Según la hoja de ruta de Carbon, Google hará público el experimento con el lanzamiento de una versión básica de trabajo (0.1) a finales de 2022. A continuación, tiene previsto lanzar una versión 0.2 en 2023 y una versión 1.0 completa en 2024–2025.