Proyecto de lenguaje Swift en 2023

Dec 02 2022
Cuál será el enfoque del grupo Swift en 2023 y qué características de lenguaje podemos esperar con los nuevos lanzamientos. Los nuevos grupos que surgieron en el Equipo central (el grupo principal de desarrolladores de lenguajes Swift) comenzaron a reorganizarse aún más con la creación de varios grupos de trabajo: se anunció el nuevo líder del equipo central, Mishal Shah.

Cuál será el enfoque del grupo Swift en 2023 y qué características de lenguaje podemos esperar con los nuevos lanzamientos.

Aparecen nuevos grupos

Core Team (el grupo principal de desarrolladores del lenguaje Swift) comenzó a reorganizarse aún más con la creación de varios grupos de trabajo:

  • Grupo de trabajo de idiomas
  • Grupo de trabajo del sitio web
  • Grupo de Trabajo de Documentación
  • Grupo de trabajo de interoperabilidad de C++
  • Swift en el servidor
  • Diversidad

Se anunció el nuevo líder del equipo Core, Mishal Shah .

Swift Evolution en el enfoque de 2023

concurrencia

El equipo de Swift trabajará para completar el soporte de idiomas para la simultaneidad que llega a Swift con Swift 5.5 en forma de Sendableprotocolo, actor, async/await. Se centrarán en:

  • Fijación de orificios de seguridad para roscas
  • Corrección de errores de llamadas entre actores
  • Posibilidad de permitir que non-Sendablelos valores se muevan entre capas aisladas

Genéricos

El siguiente enfoque principal será la evolución de los genéricos , y este proceso llevará los próximos años. Consistirá en agregar una implementación básica para el compilador y el tiempo de ejecución para admitir nuevas funciones genéricas. Por ejemplo, permitir que las tuplas se ajusten condicionalmente a los protocolos.

Enlace al foro de Swift sobre el tema

Propiedad: para esos compañeros Rustáceos

Para aquellos que no están familiarizados con Rust o el tema de la propiedad, aquí hay un video sobre Rust . Pero, ¿por qué hablar del lenguaje de programación Rust en Swift Evolution? Si bien creo sinceramente que la popularidad de Rust también ha creado nuevas mentalidades gracias a esas ideas para el lenguaje Swift. Así que este año el equipo de Swift se centrará en:

  • Agregar opción para transferir la propiedad con borrowytake
  • Adición de soporte básico para tipos no copiables. Esto le permitirá restringir el ciclo de vida de los valores críticos. Parece una característica con un nombre similar en Rust mencionado anteriormente.

Enlace al foro de Swift sobre el tema

macros

Para aquellos que no están familiarizados con las macros de otros lenguajes de programación. Macro, en un nivel muy alto, toma parte del código fuente del programa en tiempo de compilación y lo traduce a otro código fuente que luego se compila en el programa. Si desea obtener más información sobre las macros y su uso en Swift, le recomiendo este Gist de Github . Y en 2023, el equipo de idiomas de Swift se centrará en el tema, y ​​tengo muchas ganas de ver lo que van a crear.

Enlace al foro de Swift sobre el tema

C++

C ++ sigue siendo uno de los lenguajes de sistema más utilizados, por lo que no es de extrañar que el equipo de Swift quiera simplificar aún más la integración en su código Swift. Y la principal preocupación de este año para el equipo de Swift y el lenguaje C++ es: crear una documentación más amplia sobre la integración de las API de C++ en Swift y viceversa, y estabilizar la interoperabilidad actualmente prototipada del uso de C++ en Swift y Swift en C++.

Registro de paquetes

El equipo de Swift centrará su trabajo en la creación de los componentes técnicos necesarios para la transición de SPM del ecosistema de control de código fuente a un ecosistema basado en registros como Cargo, NPM o Maven.

Grupos de Trabajo Trabajo

Cada grupo de trabajo tiene sus objetivos para el próximo año, pero no los escribiré porque son bastante amplios y si está interesado en ellos, visite el artículo fuente:https://www.swift.org/blog/focus-areas-2023/o uno de los enlaces de grupos de trabajo mencionados en [[#Nuevos grupos en marcha]].

Fuentes:

  • https://www.swift.org/blog/focus-areas-2023/
  • https://apple.github.io/swift-evolution/
  • https://forums.swift.org/