3 points par xguru 2024-08-12 | 1 commentaires | Partager sur WhatsApp
  • Swift a été choisi comme langage successeur de C++ le plus adapté pour le navigateur Ladybird
  • Ces derniers mois, plusieurs personnes ont été invitées à réécrire certaines parties du projet dans d’autres langages
  • Les retours ont été très clairs : tout le monde préférait Swift

Pourquoi préférer Swift

  • Swift offre à la fois la sûreté mémoire et la sûreté face aux courses de données (à partir de la v6)
  • C’est un langage moderne avec une ergonomie solide
  • Les spécifications du Web et l’intérieur d’un navigateur sont fortement orientés objet, et il est plus facile de travailler quand on peut modéliser fidèlement les spécifications dans le code
  • Swift prend en charge l’orientation objet de manière native et, sur de nombreux points, est bien supérieur à C++
  • L’équipe Swift investit aussi beaucoup dans l’interopérabilité avec C++, ce qui offre une voie concrète vers une adoption progressive plutôt qu’une réécriture massive

Des liens étroits avec Apple

  • Historiquement, Swift a été fortement lié à Apple et aux plateformes Apple
  • Cependant, au cours de l’année écoulée, des efforts ont été faits pour rendre swiftlang plus indépendant (par exemple, avec une organisation GitHub distincte qui n’est plus apple)
  • La prise en charge des plateformes non Apple ainsi que des environnements de développement basés sur d’autres LSP s’améliore également

La suite

  • Les versions actuelles de Swift embarquent une version de Clang trop ancienne pour bien comprendre la base de code C++ existante, donc il n’est pas possible de l’utiliser immédiatement
  • Mais quand Swift 6 sortira de bêta cet automne, son utilisation commencera
  • Il n’existe pas de langage parfait, et beaucoup de choses restent encore inconnues
  • Personne n’est connu pour avoir déjà travaillé sur un moteur de navigateur avec Swift, donc des retours seront transmis à l’équipe Swift
  • L’enthousiasme est très fort ! Il faut faire avancer Ladybird vers la sûreté mémoire, et la première étape consiste à choisir un langage successeur dont l’adoption pourra commencer bientôt