Déjenos sus datos y le enviaremos un resumen por correo electrónico.
Consiento el tratamiento de mis datos personales para el envío de material publicitario personalizado de conformidad con la Política de privacidad. Al confirmar el envío, acepta recibir material de marketing
Gracias.

El formulario se ha enviado correctamente.
Encontrará más información en su buzón.

Innowise es una empresa internacional de desarrollo de software de ciclo completo de software de ciclo completo fundada en 2007. Somos un equipo de más de 1600+ profesionales de TI que desarrollan software para otros profesionales de todo el mundo.
Conócenos
Innowise es una empresa internacional de desarrollo de software de ciclo completo de software de ciclo completo fundada en 2007. Somos un equipo de más de 1600+ profesionales de TI que desarrollan software para otros profesionales de todo el mundo.

El lenguaje Carbon de Google podría sustituir a C++

En la conferencia CPP North, Chandler Carruth, ingeniero principal de software de Google, anunció el lanzamiento del lenguaje de programación Carbon. Carbon de Google es un lenguaje experimental de código abierto que pretende ser más bien el sucesor de C++, pero no su sustituto. En este artículo analizaremos Carbon, sus objetivos, su potencial y las razones por las que C++ necesita un sucesor.
Google'el lenguaje del carbono

¿Qué tiene de malo C++?

Según la Índice TIOBE de agosto de 2022, C++ ocupa el cuarto lugar después de Python, C, y Java. Desde 2001, C++ nunca ha bajado del 5º puesto, lo que indica la gran popularidad de este lenguaje de programación a pesar de su antigüedad (apareció por primera vez en 1985). C++ tiene múltiples ventajas cruciales para el desarrollo de software de rendimiento crítico. Entonces, ¿por qué necesita un sucesor?Como explica Chandler Carruth, C++ se queda corto en la consecución de los principales objetivos del lenguaje. Entre ellos están el soporte de software de rendimiento crítico, la sintaxis sencilla, la evolución del lenguaje, los sistemas modernos y la seguridad robusta, entre otros. Las características específicas del lenguaje y las cuestiones burocráticas impiden que C++ mejore gradualmente.En cuanto a las peculiaridades del lenguaje, C++ ha acumulado una elevada deuda técnica a lo largo de su evolución. Además, ha heredado muchas características heredadas del lenguaje C. Además, los usuarios de C++ dan prioridad a la compatibilidad con versiones anteriores para apoyar los ecosistemas C/C++ existentes. Al mismo tiempo, la retrocompatibilidad no permite corregir la deuda técnica, por lo que el proceso de evolución de C++ dificulta aún más la implantación de mejoras.Hablando de cuestiones burocráticas, el proceso de mejora de C++ se ve significativamente ralentizado por un comité (WG21) centrado en la estandarización pero no en el diseño. El WG21 emplea lentos procesos en cascada que provocan retrasos en la toma de decisiones cruciales. Además, el comité ha restringido el acceso a la mayoría de los expertos en C++ y sólo representa a determinadas empresas y naciones, ignorando a la gran comunidad de C++.

Objetivos del lenguaje de programación Carbon

Como lenguaje sucesor, Carbon ha heredado el objetivos originales de C++ y recibió una adicional.
Lengua de carbono
Basado en un enfoque de lenguaje sucesor, Carbon se centra en 3 cuestiones principales que abordan los retos existentes en C++ y nos permiten considerar Carbon como un proyecto prometedor: interoperabilidad, migración y evolución del lenguaje. Basándose en estos puntos, los creadores de Carbon se esfuerzan por deshacerse de la deuda técnica de C++, mantener el acceso a los ecosistemas existentes, garantizar mejoras rápidas y evitar la retrocompatibilidad mediante actualizaciones basadas en herramientas.

¿Cuáles son las promesas del carbono?

La información disponible por el momento nos permite considerar Carbon como un proyecto muy prometedor. En cuanto al aspecto práctico del nuevo lenguaje de programación, Chandler Carruth afirma que podemos esperar de Carbon una gramática más sencilla, palabras clave introductoras (es decir, fn y var), un sistema de genéricos de definición comprobada y una curva de aprendizaje pronunciada. Carbon heredará el alto rendimiento de C y evitará sus principales inconvenientes.

Además, los creadores de Carbon afirman que será un lenguaje de programación de código abierto y totalmente interoperable con C++. El código Carbon es muy similar al código C++ y, en muchos casos, son casi idénticos. Además, el código Carbon puede integrarse en el código C++. Así, los desarrolladores de C++ que quieran pasarse por completo a Carbon dispondrán de un conjunto de herramientas para transliterar automáticamente las bibliotecas de C++ a código en el nuevo lenguaje. La migración inversa también es posible. En el futuro, estas bibliotecas se pueden utilizar en un proyecto C ++ existente. Todas las herramientas de carbono están alojados en GitHub y se distribuyen bajo la licencia Apache 2.0. Hasta el momento, hay un intérprete demo de Carbon disponible.

Una parte importante del proyecto experimental Carbono es la estructura de gobierno. El equipo de Carbon se guía por los principios de inclusión y apertura. La estructura de gobierno de Carbono está diseñada para una toma de decisiones rápida, flexibilidad y un rápido desarrollo del proyecto. Todas las decisiones cruciales las toman los líderes de Carbon, representados por Chandler Carruth, Kate Gregory y Richard Smith en la actualidad. Dado que el proyecto Carbon se basa en el modelo de desarrollo de código abierto, todos los usuarios pueden enviar solicitudes a GitHub para sugerir cambios en el proyecto e impulsar la evolución del lenguaje Carbon.

Por el momento, los empleados de Google trabajan en el lenguaje de programación Carbon como un proyecto interno. Sin embargo, está previsto reducir el nivel de implicación de la empresa en el proyecto, ya que los desarrolladores entienden que, para tener éxito en el futuro, Carbon debe ser un proyecto independiente e impulsado por la comunidad.

Conclusión

Es importante entender que Carbon es un proyecto experimental y que es demasiado pronto para afirmar de forma inequívoca que Carbon es un sucesor de pleno derecho de C++. Según la hoja de ruta de Carbon, el desarrollo de las principales construcciones del lenguaje debería estar terminado a finales de 2022, y ese es exactamente el momento en el que Carbon 0.1 debería ver la luz. Llevará tiempo evaluar el éxito del proyecto, pero ya podemos hablar de las grandes perspectivas del lenguaje de programación Carbon como sucesor de C++ basándonos en las características y principios de desarrollo anunciados.
Gracias por su valoración.
Gracias por su comentario.

Índice

Valora este artículo:

4/5

4,8/5 (45 opiniones)

Contenidos relacionados

¿Nos ha traído un desafío?

    Por favor, facilítenos detalles del proyecto, duración, tecnologías, especialistas informáticos necesarios y otra información relevante.
    Grabe un mensaje de voz sobre su proyecto
    para ayudarnos a comprenderlo mejor.
    Adjunte los documentos adicionales si es necesario
    Cargar archivo

    Puede adjuntar hasta 1 archivo de 2 MB en total. Archivos válidos: pdf, jpg, jpeg, png

    Le informamos de que cuando haga clic en el botón Enviar, Innowise procesará sus datos personales de acuerdo con nuestra Política de privacidad con el fin de proporcionarle la información adecuada.

    ¿Qué pasa después?

    1

    Una vez recibida y procesada su solicitud, nos pondremos en contacto con usted para detallar las necesidades de su proyecto y firmar un acuerdo de confidencialidad que garantice la confidencialidad de la información.

    2

    Después de examinar los requisitos, nuestros analistas y desarrolladores elaboran una propuesta de proyecto con el alcance de las obras, el tamaño del equipo, el tiempo y las estimaciones de costos.

    3

    Concertamos una reunión con usted para discutir la oferta y llegar a un acuerdo.

    4

    Firmamos un contrato y comenzamos a trabajar en su proyecto lo más rápido posible.

    Gracias.

    Su mensaje ha sido enviado.
    Procesaremos su solicitud y nos pondremos en contacto con usted lo antes posible.

    Gracias.

    Su mensaje ha sido enviado.
    Procesaremos su solicitud y nos pondremos en contacto con usted lo antes posible.

    flecha