Swift 5.4 est sorti

Par:
fredericmazue

jeu, 29/04/2021 - 14:36

Apple vient de publier Swift 5.4. Cette version réduit a taille du code et améliore les performances, notamment au niveau des contrôles de conformité de protocole au moment de l'exécution, ceci grâce à une implémentation plus rapide de la table de hachage pour la mise en cache des résultats de recherche précédents.

Apple souligne aussi que les modifications consécutives du tableau évitent désormais les contrôles d'unicité redondants., comme le montre cet extrait de code :

func foo(_ a: inout [Int]) {
  // Must do copy-on-write (CoW) check here.
  a[0] = 1
  // The compiler no longer generates
  // a redundant CoW check here.
  a[1] = 2
}

Swift 5.4 amène de nouvelles fonctionnalités linguistiques :

  • Prise en charge de plusieurs paramètres variadiques dans les fonctions, les indices et les initialiseurs (SE-0284)
  • Extension de la syntaxe des membres implicites (SE-0287)
  • Générateurs de résultats (SE-0289)
  • Fonctions locales prenant en charge la surcharge
  • Encapsuleurs de propriétés (Property wrappers) pour les variables locales

Enfin, il est à remarquer que pour préparer la voie à un nouveau modèle d'accès concurrentiel, le compilateur émet maintenant un avertissement et un correctif pour les utilisations non qualifiées de await comme identificateur.Ces identificateurs seront interprétés comme le mot-clé await dans une future version de Swift dans le cadre de SE-0296.