Go 1.15 retrasa cambios importantes

Con la versión de producción Go 1.14 prevista para este mes, el equipo de desarrollo de Go anticipa que la versión de seguimiento, Go 1.15, se centrará en ajustes menores en lugar de cambios importantes. Go 1.15 está programado para ser lanzado en agosto. 

El equipo de Go decidió que sería mejor posponer los cambios importantes hasta que se traza un plan a largo plazo. En cambio, solo hay tres propuestas para Go 1.15:

  • Diagnosticar string (int)conversión en go vet. Inicialmente planeado para Go 1.14, este cambio aborda la confusión sobre la  string (int)conversión. En lugar de eliminar la conversión, el plan exige comenzar con un veterror.
  • Diagnostique declaraciones de tipo de interfaz-interfaz imposibles en go vet.
  • Expresiones de índice y corte de evaluación constante con cadenas e índices constantes. Actualmente, indexar o dividir una cadena constante con un índice constante, o índices, produce un valor byteo no constante string. Pero si los operandos son constantes, el compilador podría evaluar constantemente tales expresiones y producir un resultado constante, posiblemente sin tipo. Se harán ajustes a las especificaciones y compiladores.

Un boletín reciente del equipo de Go describe estas propuestas para Go 1.1.5 y también reitera los objetivos principales de Go en general, que incluyen mejoras en la administración de paquetes y versiones, mejor manejo de errores y genéricos.

Un intento anterior de mejorar el manejo de errores, la trypropuesta de una función de verificación de errores incorporada, encontró una fuerte oposición y fue abandonada. Los genéricos se han mencionado como un tema principal para la versión Go 2, lo que permite el polimorfismo paramétrico con parámetros de tipo.

El equipo observó que el soporte de módulos en Go está en buena forma y está mejorando. Y si bien ha habido solicitudes de enumeraciones y tipos inmutables, estas ideas aún no se han desarrollado lo suficiente ni se han considerado lo suficientemente urgentes como para seguirlas.