4 dépôts
Libraries providing functional programming primitives and collection manipulation tools specifically for Python.
Distinct from Functional Utility Libraries: Distinct from Functional Utility Libraries: specifically targets Python, providing iterable transformations, function composition, and lazy evaluation for that language.
Explore 4 awesome GitHub repositories matching programming languages & runtimes · Python Functional Programming Libraries. Refine with filters or upvote what's useful.
Toolz is a Python library that implements functional programming utilities for iterable transformation, dictionary manipulation, function composition, and lazy evaluation. It provides a set of pure functions designed to work with Python's built-in data structures, enabling concise and composable data processing workflows. What distinguishes toolz is its support for curried partial application, allowing functions to be incrementally applied and reused. It includes dictionary-centric operations that handle nested structures, and offers iterable chain transformers that combine mapping, filtering
A Python library providing functional tools including iterable transformations, function composition, and lazy evaluation.
Coconut est un langage de programmation fonctionnel qui compile vers Python. Il fonctionne comme un compilateur source-à-source, traduisant une syntaxe fonctionnelle de haut niveau en code Python compatible pour maintenir la compatibilité à l'exécution. Le langage introduit un système logique pour le pattern matching et la déstructuration de structures de données complexes. Il fournit un mécanisme d'optimisation des appels terminaux (tail call optimization) pour éviter les erreurs de débordement de pile lors d'appels de fonctions récursives profondes et emploie un moteur d'évaluation paresseuse pour différer les calculs jusqu'à ce que les résultats soient explicitement requis. Le projet inclut la prise en charge des types de données algébriques, des opérateurs de pipeline et de l'application partielle. Il fournit également un framework pour le traitement parallèle des données en distribuant les opérations de mapping sur plusieurs cœurs de CPU.
Brings functional programming primitives like piping and partial application to the Python environment.
Returns est une bibliothèque de programmation fonctionnelle pour Python qui fournit des conteneurs typés pour gérer l'état, la gestion d'erreurs et l'optionalité. Elle sert de bibliothèque de conteneurs monadiques et de framework de gestion d'erreurs typé, remplaçant les blocs try-catch traditionnels et les vérifications de nullité par des conteneurs Result et Optional pour traiter les exceptions comme des données. Le projet se distingue par son utilisation d'un plugin d'analyse statique Mypy spécialisé pour valider les pipelines fonctionnels et émuler des types d'ordre supérieur. Il fournit des mécanismes pour isoler les effets de bord via des conteneurs IO et offre un framework pour l'injection de dépendances typée qui diffère la fourniture des dépendances jusqu'à l'exécution finale d'un calcul. La bibliothèque couvre un large éventail de primitives fonctionnelles, incluant le currying, l'application partielle et la composition de pipelines de données déclaratifs. Elle prend en charge la gestion de workflow asynchrone en enveloppant les coroutines dans des conteneurs pour enchaîner des opérations non bloquantes et inclut des utilitaires pour la gestion du cycle de vie des ressources et la vérification des lois algébriques pour les conteneurs personnalisés.
Provides a comprehensive toolkit of functional programming primitives and type-safe containers specifically for Python.
more-itertools is a Python iterable utility library providing advanced functions for manipulating, filtering, and transforming data sequences. It serves as a data stream processing toolkit and a set of utilities for iterator state management, extending the capabilities of the standard Python itertools module. The library includes a combinatorial math toolkit for generating permutations, combinations, and powersets, alongside routines for number theory calculations and matrix operations. It also provides tools for stream state management, allowing users to peek at upcoming elements or seek wit
Provides an advanced collection of functional primitives and iterable transformation tools that extend the standard Python itertools module.