awesome-repositories.com
Blog
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

19 dépôts

Awesome GitHub RepositoriesFunction Currying

Transforms functions to accept arguments individually through successive calls.

Distinct from Functional: Distinct from general Functional utilities: specifically implements the currying transformation.

Explore 19 awesome GitHub repositories matching programming languages & runtimes · Function Currying. Refine with filters or upvote what's useful.

Awesome Function Currying GitHub Repositories

Trouvez les meilleurs dépôts grâce à l'IA.Nous recherchons les dépôts les plus pertinents grâce à l'IA.
  • lodash/lodashAvatar de lodash

    lodash/lodash

    61,235Voir sur GitHub↗

    Lodash is a JavaScript utility library and data manipulation toolkit. It provides a collection of modular functions for transforming, filtering, and validating arrays, objects, strings, and numbers. The project functions as a functional programming toolkit, offering capabilities for function composition, currying, and lazy evaluation. It includes mechanisms for execution control, such as debouncing and throttling, to manage the timing and frequency of function invocations. The library covers a broad surface of data operations, including deep cloning and merging of complex nested structures,

    Transforms functions to accept arguments one at a time until all required values are provided.

    JavaScriptjavascriptlodashmodules
    Voir sur GitHub↗61,235
  • ramda/ramdaAvatar de ramda

    ramda/ramda

    24,072Voir sur GitHub↗

    Ramda is a functional JavaScript standard library and toolset for immutable data transformation and composition. It provides a comprehensive suite of pure utility functions designed to enable declarative data processing pipelines. The library is distinguished by its use of automatic function currying and a data-last argument order. These design patterns allow multi-argument functions to be partially applied, simplifying the construction of processing chains where data is passed through a sequence of operations. The toolkit covers broad data manipulation capabilities, including list processin

    Implements automatic function currying to allow partial application of multi-argument utility functions.

    JavaScriptjavascriptramda
    Voir sur GitHub↗24,072
  • getify/functional-light-jsAvatar de getify

    getify/Functional-Light-JS

    16,763Voir sur GitHub↗

    Functional-Light-JS is a JavaScript functional programming library designed to implement functional patterns within JavaScript applications. It serves as a toolkit for declarative data processing, immutable data management, and the construction of complex logic through higher-order functions. The library focuses on a pragmatic implementation of functional programming, providing utilities for curried argument application and function composition. It emphasizes the use of pure functions to calculate state updates and manage application data without side effects. The project covers broad capabi

    Provides utilities for transforming functions to accept arguments individually through successive calls.

    JavaScript
    Voir sur GitHub↗16,763
  • rstacruz/cheatsheetsAvatar de rstacruz

    rstacruz/cheatsheets

    14,429Voir sur GitHub↗

    This project is a comprehensive collection of web development reference guides and technical cheat sheets. It provides a curated set of markdown-based documentation designed to help developers quickly locate syntax patterns and API examples for common web technologies and programming languages. The repository serves as a specialized reference library covering several distinct technical domains. It includes extensive guides for CSS, focusing on selectors, Flexbox, Grid, and responsive layout properties, as well as a DevOps command reference for Docker, Kubernetes, AWS, Ansible, and general she

    Provides technical examples of functional logic patterns, including currying and function nesting.

    SCSS
    Voir sur GitHub↗14,429
  • boostorg/boostAvatar de boostorg

    boostorg/boost

    8,493Voir sur GitHub↗

    Boost is a collection of portable, high-performance source libraries that extend the C++ standard library. It provides a wide range of reusable components, data structures, and algorithms designed to add capabilities to the base language across different platforms. The project is distinguished by its extensive focus on compile-time template metaprogramming and generic programming. It implements advanced architectural patterns such as policy-based design, concept-based type validation, and the use of SFINAE for conditional template resolution to minimize runtime overhead. The library covers a

    Enables nesting bind expressions to pass the output of one function as input to another for sequential execution.

    HTML
    Voir sur GitHub↗8,493
  • millsp/ts-toolbeltAvatar de millsp

    millsp/ts-toolbelt

    7,145Voir sur GitHub↗

    ts-toolbelt is a collection of specialized utilities for manipulating and validating TypeScript types. It provides a toolkit for performing complex transformations on objects, unions, and functions to enforce strict data consistency at compile time. The library features dedicated transformers for function types, including utilities for currying, composition, and signature extraction. It also includes an object type manipulator for deep merging, patching, and reshaping complex structures. The capability surface extends to literal string processing, type-level arithmetic, and tuple operations.

    Transforms multi-argument functions into a sequence of single-argument functions using placeholders.

    TypeScriptdynamic-typessafetytype-checking
    Voir sur GitHub↗7,145
  • angus-c/justAvatar de angus-c

    angus-c/just

    6,204Voir sur GitHub↗

    Just est une collection de bibliothèques utilitaires JavaScript conçues pour la manipulation de données, la programmation fonctionnelle, l'optimisation des performances, l'analyse statistique et le traitement de chaînes. Il fournit un ensemble d'outils pour le clonage profond, le filtrage et la transformation d'objets et tableaux complexes. Le projet est structuré comme une série de modules sans dépendance, permettant aux utilitaires d'être utilisés indépendamment pour minimiser la taille du bundle. Il implémente des modèles de programmation fonctionnelle incluant le currying, le piping et l'application partielle, et fournit un contrôle d'exécution via la mémoïsation, le debouncing et le throttling. La bibliothèque couvre un large éventail de capacités, incluant la manipulation profonde d'objets, la génération de données combinatoires et des opérations mathématiques telles que la vérification de nombres premiers et le clamping numérique. Elle inclut également des outils statistiques pour calculer des métriques comme la variance et l'écart-type, ainsi que des utilitaires de traitement de texte pour la conversion de casse et l'interpolation de chaînes.

    Transforms functions that take multiple arguments into a series of single-argument functions.

    JavaScript
    Voir sur GitHub↗6,204
  • stdlib-js/stdlibAvatar de stdlib-js

    stdlib-js/stdlib

    5,735Voir sur GitHub↗

    Provides a function currying utility that transforms multi-argument functions into chained single-argument calls.

    JavaScriptjavascriptjslibrary
    Voir sur GitHub↗5,735
  • remeda/remedaAvatar de remeda

    remeda/remeda

    5,382Voir sur GitHub↗

    Remeda est une bibliothèque utilitaire fonctionnelle typée pour TypeScript conçue pour construire des pipelines de transformation de données. Elle fournit une boîte à outils de fonctions d'assistance pour manipuler les tableaux et les objets tout en maintenant une intégrité de type stricte tout au long du processus. La bibliothèque se caractérise par son support des styles d'appel data-first et data-last. Elle utilise l'évaluation paresseuse (lazy evaluation) pour traiter les collections de données, n'évaluant les transformations que lorsque le résultat final est demandé afin d'éviter de créer des copies intermédiaires de collections. La boîte à outils couvre la manipulation de collections, la composition de fonctions et la création de chaînes de logique modulaires. Ces capacités permettent la construction de pipelines de données qui font circuler l'information à travers des séquences de transformations.

    Provides function currying that allows switching between direct execution and partial application based on argument count.

    TypeScript
    Voir sur GitHub↗5,382
  • duke-git/lancetAvatar de duke-git

    duke-git/lancet

    5,295Voir sur GitHub↗

    Lancet est une extension complète de la bibliothèque standard Go, fournissant une collection de fonctions réutilisables et de structures de données conçues pour réduire le code répétitif (boilerplate) dans les applications. Il sert de boîte à outils polyvalente couvrant plusieurs domaines, dont la concurrence, la sécurité, le réseau et la logique fonctionnelle. Le projet se distingue par des outils spécialisés pour la concurrence en Go, tels que le verrouillage par clé et le traitement de flux basé sur les canaux, ainsi qu'un kit de programmation fonctionnelle dédié qui prend en charge le currying et la composition de fonctions. Il inclut également une bibliothèque de cryptographie dédiée implémentant le chiffrement symétrique et asymétrique via les standards AES, RSA et SM. La bibliothèque couvre un large éventail de domaines, incluant des structures de données avancées comme les caches LRU et les arbres de recherche binaire, le calcul mathématique pour l'algèbre et les statistiques, et l'intégration au système d'exploitation pour la gestion des processus et des fichiers. Elle fournit en outre des utilitaires pour le réseau HTTP, la manipulation de dates et d'heures, et le traitement de données de haut niveau comme l'algèbre des ensembles et l'évaluation de flux paresseux.

    Transforms multi-argument functions into a series of single-argument functions through currying.

    Gogenericsgogolang
    Voir sur GitHub↗5,295
  • facebookresearch/auglyAvatar de facebookresearch

    facebookresearch/AugLy

    5,086Voir sur GitHub↗

    AugLy est une bibliothèque d'augmentation de données multimodale et un augmentateur de jeux de données de machine learning. Elle fournit un système pour générer des variations synthétiques de données d'entraînement à travers des jeux de données audio, image, texte et vidéo pour augmenter la diversité des échantillons et améliorer la robustesse du modèle. La bibliothèque fonctionne comme un simulateur de bruit multimédia, spécifiquement conçu pour imiter les captures d'utilisateurs réels en superposant des modèles de réseaux sociaux et des artefacts internet sur les médias. Elle inclut un traqueur de provenance des données pour enregistrer les transformations spécifiques et les niveaux d'intensité appliqués à chaque élément de données augmentées. L'outil couvre un large éventail de capacités d'expansion de jeux de données, incluant des transformations linguistiques pour le texte, des transformations temporelles et visuelles pour la vidéo, et des transformations sonores pour l'audio.

    Provides a system for applying sequential transformation functions to create modified data versions.

    Python
    Voir sur GitHub↗5,086
  • pytoolz/toolzAvatar de pytoolz

    pytoolz/toolz

    5,117Voir sur GitHub↗

    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

    Supports chaining functions into pipelines and partially applying arguments to build reusable logic.

    Python
    Voir sur GitHub↗5,117
  • sadanandpai/javascript-code-challengesAvatar de sadanandpai

    sadanandpai/javascript-code-challenges

    4,451Voir sur GitHub↗

    Ce dépôt est une collection de défis de codage JavaScript et un guide d'entretien complet. Il fournit des implémentations de référence et des exemples éducatifs conçus pour aider les développeurs à maîtriser les fondamentaux du langage et à se préparer aux entretiens techniques. Le projet couvre un large éventail d'implémentations spécialisées, incluant des modèles de programmation fonctionnelle comme le currying et l'application partielle, ainsi que des modèles asynchrones pour le contrôle de la concurrence. Il inclut également des exemples pratiques de manipulation du Document Object Model (DOM) et l'implémentation de structures de données courantes telles que les piles et les files d'attente. Globalement, la collection couvre des fonctionnalités avancées du langage, des implémentations de modèles de conception et la manipulation de structures de données. Elle aborde une surface qui inclut la programmation asynchrone, l'interaction DOM, les modèles de création orientés objet et les opérations primitives de bas niveau.

    Implements function currying to transform functions with multiple arguments into a series of single-argument functions.

    MDXchallengescoding-interviewfrontend
    Voir sur GitHub↗4,451
  • evhub/coconutAvatar de evhub

    evhub/coconut

    4,338Voir sur GitHub↗

    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.

    Provides pipeline operators to chain multiple functions together for sequential data flow.

    Python
    Voir sur GitHub↗4,338
  • dry-python/returnsAvatar de dry-python

    dry-python/returns

    4,310Voir sur GitHub↗

    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.

    Enables the composition of execution pipelines by chaining multiple operations into a declarative sequence.

    Python
    Voir sur GitHub↗4,310
  • ankurp/dollarAvatar de ankurp

    ankurp/Dollar

    4,240Voir sur GitHub↗

    Dollar est une bibliothèque de programmation fonctionnelle pour Swift qui fournit une boîte à outils complète pour la manipulation de collections, le traitement de chaînes, les calculs mathématiques et la gestion des dates et heures. Elle sert de suite d'utilitaires pour filtrer, agréger et restructurer des tableaux et des dictionnaires. Le projet implémente des modèles de programmation fonctionnelle tels que le currying, la mémoïsation et la composition de fonctions. Il dispose également d'une interface de wrapper chaînable qui permet d'appliquer plusieurs transformations de données séquentiellement avant d'extraire un résultat final. La bibliothèque couvre un large éventail de domaines de capacités, incluant l'assainissement de texte et la conversion de casse, les opérations d'expressions régulières et le calcul de valeurs mathématiques comme les factorielles et les diviseurs. Elle inclut également des outils pour analyser les timestamps Unix et calculer des décalages temporels relatifs. La boîte à outils étend les types de la bibliothèque standard Swift avec des méthodes génériques pour la transformation et l'agrégation de données.

    Implements function currying to transform functions to accept arguments individually through successive calls.

    Swift
    Voir sur GitHub↗4,240
  • kolodny/exercisesAvatar de kolodny

    kolodny/exercises

    4,216Voir sur GitHub↗

    This project is a comprehensive educational suite of coding challenges and implementation guides focused on JavaScript. It provides a collection of programmatic exercises and interview questions designed to practice core logic and algorithms. The repository serves as a test-driven development workbook, pairing coding problems with test suites to verify the correctness of implemented solutions. It includes a specific framework for exercise solution verification and the integration of asynchronous logic into automated testing flows. The content covers a wide range of computer science building

    Provides a programmatic implementation of function currying for partial application.

    JavaScript
    Voir sur GitHub↗4,216
  • johnsundell/swifttipsAvatar de JohnSundell

    JohnSundell/SwiftTips

    4,014Voir sur GitHub↗

    SwiftTips is a curated collection of guides, libraries, and design patterns focused on Swift language mastery, application architecture, and API design. It provides a technical resource for implementing advanced coding techniques and architectural best practices. The project emphasizes creating type-safe and conversational interfaces through strategic protocol composition and generics. It offers specialized patterns for building modular UI systems and managing complex view hierarchies, alongside comprehensive strategies for unit testing and dependency injection. The resource covers a broad s

    Implements a custom operator to chain throwing functions into a sequential execution pipeline.

    Voir sur GitHub↗4,014
  • vkhorikov/csharpfunctionalextensionsAvatar de vkhorikov

    vkhorikov/CSharpFunctionalExtensions

    2,777Voir sur GitHub↗

    CSharpFunctionalExtensions is a functional programming library for C# that provides a framework of monadic containers, pipeline orchestration tools, and immutable domain object patterns. It implements the result pattern to handle operation success and failure as values, reducing the reliance on exceptions for control flow. The library enables railway-oriented programming by chaining multiple operations into sequences that execute only upon the success of previous steps. It provides specialized wrappers for optional and result types to minimize null checks and nested conditional logic, alongsi

    Enables the composition of execution pipelines where subsequent steps depend on the success of previous ones.

    C#csharpentityfunctional-programming
    Voir sur GitHub↗2,777
  1. Home
  2. Programming Languages & Runtimes
  3. Programming Utilities
  4. Functional
  5. Function Currying

Explorer les sous-tags

  • Functional Pipeline Composition1 sous-tagPatterns for nesting and currying functions to build complex logic chains. **Distinct from Function Currying:** Focuses on the composition of execution pipelines rather than just the currying transformation itself.