Un nouveau projet open source cherche à doter le langage Python d'outils issus de la programmation fonctionnelle. Baptisée Katharos, la bibliothèque a été publiée sur GitHub par le développeur Kamal Farahani. Elle propose des types et des fonctions conçus pour permettre aux programmeurs d'écrire du code Python en suivant un paradigme fonctionnel.

Des concepts fonctionnels pour Python

Katharos met à disposition des monades, des foncteurs (functors) et des structures de données immuables. En programmation fonctionnelle, une monade est un motif de conception qui encapsule un type de données et permet d'enchaîner des opérations tout en gérant les effets de bord. Les foncteurs sont des types qui définissent une opération de transformation (mappage) sur leur contenu. L'immutabilité garantit que les données ne peuvent pas être modifiées après leur création, ce qui réduit les bugs dans les programmes complexes.

Le projet, hébergé sur le compte GitHub de Kamal Farahani, a déjà recueilli huit étoiles de la part de la communauté. Il est distribué sous licence publique, sans restriction d'utilisation.

Un outil pour les développeurs Python

Python, bien que multi-paradigme, est majoritairement utilisé avec une approche impérative ou orientée objet. L'arrivée de Katharos pourrait intéresser les développeurs qui souhaitent adopter les principes de la programmation fonctionnelle sans quitter l'écosystème Python. La bibliothèque fournit un ensemble de types prêts à l'emploi, ce qui évite aux développeurs d'avoir à implémenter eux-mêmes ces structures complexes.

Le code source de Katharos est accessible librement sur GitHub, permettant à tout développeur de l'étudier, de le modifier ou de contribuer au projet. Aucune information n'a encore été communiquée sur une éventuelle date de publication sur le gestionnaire de paquets PyPI.