Apple a lancé un nouveau langage de configuration : Pkl
- Medhi Naitmazi
- Il y a 10 mois (Màj il y a 10 mois)
- 💬 Réagir
- 🔈 Écouter
Discrètement, Apple a annoncé la première version open source de Pkl (à prononcer "Pickle"), un langage de programmation qui vise à améliorer la configuration au sens large. Après XML, JSON et autre YAML, Apple va plus loin.
Un nouveau langage nommé Pkl
Bien que les langages de configuration connus soient pratiques, ils montrent leurs limites dans les cas complexes. Le problème principal est qu'il n'y a pas de système de validation propre, ce qui amène des erreurs.
Bien sûr, certains ont recours à des outils tiers pour ajouter une couche de sécurité et de validation, ce qui fait que cela se transforme vite en un langage de programmation.
C'est pouqoi certains ont utilisé Kotlin, Swift, Ruby ou Javascript pour gérer les données de configuration. Puissants, ils sont aussi trop complexes pour le besoin, sans oublier qu'ils sont liés à leur écosystème.
C'est là qu'Apple intervient. La société de Tim Cook a créé Pkl, un mélange entre un langage statique et un langage de programmation.
Apple a conçu Pkl avec trois objectifs principaux :
- Assurer la sécurité en détectant les erreurs de validation avant le déploiement.
- S'adapter aux cas d'utilisation les plus simples comme les plus complexes.
- Être un plaisir à écrire, grâce aux meilleures intégrations IDE de sa catégorie.
Il s'agit d'un langage déclaratif et simple à lire et à écrire, mais enrichi de capacités empruntées à des langages polyvalents. Lorsque vous écrivez en Pkl, vous pouvez utiliser les caractéristiques du langage auxquelles vous vous attendez, comme les classes, les fonctions, les conditionnelles et les boucles. Vous pouvez construire des couches d'abstraction et partager du code en créant des paquets et en les publiant. Plus important encore, vous pouvez utiliser Pkl pour répondre à de nombreux types de besoins de configuration. Il peut être utilisé pour produire des fichiers de configuration statiques dans n'importe quel format, ou être intégré en tant que bibliothèque dans une autre application en cours d'exécution (Java, Kotlin, Go et Swift).
Retrouvez Pkl sur Github.