Llegamos a ustedes gracias a:



Noticias

Novedades en Google Go: Qué esperar en las versiones 2 y 1.13

[13/12/2018] Los constructores del lenguaje Google Go (Golang) están explorando direcciones para la próxima generación del lenguaje. Los principales temas emergentes para Go 2 incluyen soporte para un mejor manejo de errores y genéricos. Mientras que Go 1 fue un pequeño esfuerzo de equipo, Go 2 estará más dirigido por la comunidad. También se están considerando mejoras para Go 1.13.

Lo que está previsto para Go 2

Se han publicado borradores de diseños para estas dos áreas, aunque se necesita más exploración. El manejo de errores en Go ha tenido problemas con el excesivo uso de códigos modelo para la comprobación de errores y una cantidad insuficiente de informes de errores precisos. El plan bajo consideración implica agregar una expresión de verificación, para acortar el manejo de errores y mantenerlos explícitos. Una nueva declaración de manejo define qué acciones se deben tomar cuando falla una verificación, lo que facilita agregar informes de errores precisos en un solo lugar. También se pueden explorar interfaces estándar adicionales para los valores de error.

Para los genéricos, el objetivo es abordar el problema con bibliotecas de escritura que retiren los detalles de tipos innecesarios permitiendo el polimorfismo paramétrico con parámetros de tipos. Los constructores de Go quieren que sea posible escribir bibliotecas útiles para manipular los valores arbitrarios de canales y mapas y escribir funciones polimórficas que puedan operar tanto en valores []byte como string.

Las propuestas para Go 2 incluyen sugerencias para cambios importantes en la biblioteca o el lenguaje, incluyendo algunos que no cumplen con la garantía de compatibilidad de Go 1. A fines de noviembre, había 120 temas etiquetados como propuestas de Go 2, que van desde facilidades de programación genéricas hasta tener una sola forma de declarar las variables. Algunas propuestas relacionadas se han fusionado.

Lo que está previsto para Go 1.13

Los desarrolladores de Go están considerando las siguientes características, seleccionadas a partir de las propuestas de Go 2, para el lanzamiento previsto de Go 1.13:

  • Identificadores generales de Unicode, para los desarrolladores que utilizan alfabetos no occidentales.
  • Literales enteros binarios y soporte para la _ en números literales, para que Go esté a la par con la mayoría de los otros lenguajes.
  • Permitir enteros firmados como cuentas de cambio, para limpiar el código y tener expresiones de cambio más en sintonía con las expresiones de índice y las funciones integradas cap y len.