Introduction
L'équipe de ClojureScript annonce une nouvelle version de son langage, avec une fonctionnalité très attendue : le support d'async/await. Cette mise à jour permet une meilleure interaction avec les API modernes de navigateurs et les bibliothèques populaires.
Contexte Technique
La dernière version de ClojureScript cible ECMAScript 2016, ce qui permet d'améliorer l'interopérabilité avec JavaScript. La fonctionnalité async/await est activée en ajoutant l'annotation ^:async à une fonction. Cela permet au compilateur ClojureScript d'émettre une fonction JavaScript asynchrone.
Par exemple, la fonction foo peut être définie comme suit : (defn ^:async foo [n] ...). Cette fonction peut alors utiliser l'instruction await pour attendre la résolution d'une promesse.
Analyse et Implications
Cette nouvelle fonctionnalité élimine le besoin de dépendances supplémentaires pour interagir avec les API modernes de navigateurs et les bibliothèques populaires. Les tests peuvent également être écrits de manière asynchrone en utilisant l'annotation ^:async avec deftest.
Perspective
Il est important de noter que cette fonctionnalité est le résultat d'une demande forte de la part de la communauté ClojureScript. Il faudra surveiller comment cette nouvelle fonctionnalité sera utilisée et comment elle améliorera l'expérience de développement avec ClojureScript. Les prochaines étapes pourraient inclure l'amélioration de l'interopérabilité avec d'autres langages et la mise en œuvre de nouvelles fonctionnalités pour améliorer la productivité des développeurs.