awesome-repositories.com
Blog
MCP
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
ProjetServeur MCPÀ proposNotre méthodologiePresse
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

29 dépôts

Awesome GitHub RepositoriesLazy Evaluation Patterns

Execution models where operations are deferred until the result is explicitly requested.

Distinguishing note: Focuses on the timing of execution rather than the data structure itself.

Explore 29 awesome GitHub repositories matching software engineering & architecture · Lazy Evaluation Patterns. Refine with filters or upvote what's useful.

Awesome Lazy Evaluation Patterns 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,

    Implements a lazy evaluation chain that defers computation until the final result is explicitly requested.

    JavaScriptjavascriptlodashmodules
    Voir sur GitHub↗61,235
  • faif/python-patternsAvatar de faif

    faif/python-patterns

    42,801Voir sur GitHub↗

    This project is a comprehensive collection of software design patterns implemented in Python. It serves as a reference for architectural, behavioral, creational, and structural patterns to guide the organization of Python applications. The collection covers behavioral strategies for managing object communication and state, creational techniques for controlling object instantiation, and structural methods for composing classes and objects into flexible hierarchies. It also includes architectural references for system-wide structuring, such as multi-tier architectures and blackboard models. Th

    Implements execution models that defer the evaluation of expressions until the value is required.

    Pythondesign-patternsidiomspython
    Voir sur GitHub↗42,801
  • facebook/immutable-jsAvatar de facebook

    facebook/immutable-js

    33,060Voir sur GitHub↗

    This is a persistent data structure library for JavaScript that provides collections which prevent the direct mutation of objects and arrays. It serves as an immutable state management tool and functional programming utility, ensuring that data remains unchanged after creation to simplify change detection and state tracking. The library enables the maintenance of application state by producing new versions of data structures during updates. It focuses on efficient data comparison by checking actual content instead of memory references and supports a functional programming workflow to prevent

    Provides lazy sequence evaluation to defer expensive collection transformations until the results are explicitly requested.

    TypeScript
    Voir sur GitHub↗33,060
  • immutable-js/immutable-jsAvatar de immutable-js

    immutable-js/immutable-js

    33,060Voir sur GitHub↗

    Immutable.js is a library of persistent data structures and a functional state management toolkit. It provides a collection of immutable objects and arrays that prevent direct mutation to ensure predictable state management in JavaScript applications. The library utilizes structural sharing to efficiently create new versions of data without full copying and implements lazy sequence processing to chain data transformations that execute only when values are requested. It also supports batch mutation processing, allowing multiple changes to be applied to a temporary mutable copy before returning

    Provides lazy sequence evaluation to defer map and filter computations until values are explicitly requested.

    TypeScript
    Voir sur GitHub↗33,060
  • lovell/sharpAvatar de lovell

    lovell/sharp

    32,340Voir sur GitHub↗

    Sharp is a high-performance image processing library for Node.js. It serves as a native extension and wrapper for the libvips framework, providing tools for image resizing, format conversion, and programmatic data manipulation. The project enables the transformation of images into web-friendly formats such as WebP and AVIF while preserving color profiles and alpha channels. It also provides capabilities for generating blank image buffers with specified dimensions and background colors. The library covers a broad range of image manipulation utilities, including rotation, extraction, compositi

    Utilizes image streaming pipelines to process pixels on demand, minimizing memory usage.

    JavaScriptavifcropexif
    Voir sur GitHub↗32,340
  • deepset-ai/haystackAvatar de deepset-ai

    deepset-ai/haystack

    24,253Voir sur GitHub↗

    Haystack is an orchestration framework designed for building complex search and generative AI pipelines. It functions as an agentic workflow engine, enabling the construction of automated sequences that allow AI agents to perform multi-step reasoning and data analysis. The framework utilizes a modular, component-based architecture that connects processing steps into directed acyclic graphs. By employing a provider-agnostic integration layer, it decouples core logic from specific external AI services and vector databases, allowing for the flexible exchange of underlying technologies. This desi

    Optimizes resource usage by triggering pipeline steps only when data flows through the graph.

    MDXagentagentsai
    Voir sur GitHub↗24,253
  • nixos/nixpkgsAvatar de NixOS

    NixOS/nixpkgs

    23,527Voir sur GitHub↗

    Nixpkgs is a comprehensive repository of declarative software definitions used to build and manage reproducible system environments. It functions as a framework for assembling operating system components and application dependencies into consistent, versioned, and verifiable software collections. By utilizing a functional derivation graph and a lazy evaluation model, the project ensures that software environments are defined as pure expressions, resulting in absolute reproducibility across different machines. The repository distinguishes itself through its ability to manage complex software l

    Defines software collections as expressions that are only computed on-demand.

    Nixhacktoberfestlinuxnix
    Voir sur GitHub↗23,527
  • higherorderco/bendAvatar de HigherOrderCO

    HigherOrderCO/Bend

    19,175Voir sur GitHub↗

    Bend is a high-level parallel programming language and compiler designed to execute code across multi-core CPUs and GPUs automatically. By translating functional source code into a graph-based intermediate representation, it enables massive parallel execution without requiring manual management of threads, locks, or atomic operations. The runtime operates as an interaction net engine, where computations are represented as networks of nodes that reduce through local rewriting rules. This model utilizes a work-stealing scheduler to distribute tasks across thousands of hardware threads, ensuring

    Represents expressions as trees of deferred computations that only evaluate when strictly required.

    Rust
    Voir sur GitHub↗19,175
  • rust-lang/rust-analyzerAvatar de rust-lang

    rust-lang/rust-analyzer

    16,590Voir sur GitHub↗

    Rust-analyzer is a language server implementation that provides real-time code intelligence, static analysis, and development productivity tools for the Rust programming language. It functions as a backend engine that communicates with text editors to deliver deep structural understanding of source code, enabling features like semantic analysis, symbol navigation, and automated refactoring. The project distinguishes itself through a core engine designed for high-performance responsiveness, utilizing incremental query-based compilation and lazy demand-driven evaluation to minimize resource con

    Defers code intelligence calculations until requested to minimize resource consumption and maintain editor responsiveness.

    Rusthacktoberfestlsp-serverrust
    Voir sur GitHub↗16,590
  • zulko/moviepyAvatar de Zulko

    Zulko/moviepy

    14,699Voir sur GitHub↗

    MoviePy is a Python video editing library and automated video processor designed for programmatically cutting, concatenating, and manipulating video and audio files. It serves as a non-linear video editor and an interface for FFmpeg to handle the reading, writing, and conversion of diverse media formats and codecs. The library enables automated video composition through the layering of multiple video and audio streams using transparency and coordinate-based positioning. It supports dynamic content generation by inserting text overlays and performing custom video frame processing where raw fra

    Implements a deferred execution graph that defines editing operations to be performed only during the final render.

    Pythonanimationgifhacktoberfest
    Voir sur GitHub↗14,699
  • sympy/sympyAvatar de sympy

    sympy/sympy

    14,683Voir sur GitHub↗

    SymPy is a Python computer algebra system and symbolic mathematics library. It performs algebraic manipulations, calculus, and equation solving using symbolic representations to achieve exact computations rather than numerical approximations. The library includes a LaTeX expression parser that converts mathematical strings into symbolic representations for computation and formula manipulation. It also incorporates a mathematical benchmarking suite to measure execution speed and detect performance regressions across different software versions. The system provides capabilities for automated m

    Defers computation of complex symbolic results until a numerical value or simplified form is explicitly requested.

    Pythoncomputer-algebrahacktoberfestmath
    Voir sur GitHub↗14,683
  • dask/daskAvatar de dask

    dask/dask

    13,746Voir sur GitHub↗

    Dask est un framework de calcul parallèle et un planificateur de tâches distribué conçu pour mettre à l'échelle les flux de travail de science des données Python, des machines uniques aux grands clusters. Il fonctionne comme un gestionnaire de ressources de cluster qui orchestre la logique computationnelle en représentant les tâches et leurs dépendances sous forme de graphes acycliques dirigés. Cette architecture permet au système d'automatiser la distribution des charges de travail sur le matériel disponible tout en gérant des exigences d'exécution complexes. Le projet se distingue par un moteur d'évaluation paresseuse qui diffère les opérations sur les données jusqu'à ce qu'elles soient explicitement demandées, permettant une optimisation globale du graphe et une allocation efficace des ressources. Il intègre le déversement de données conscient de la mémoire pour éviter les plantages du système lors du traitement de jeux de données dépassant la mémoire disponible, et il utilise la fusion de graphes de tâches pour combiner des séquences d'opérations en étapes d'exécution uniques, minimisant la surcharge de planification et la communication entre nœuds. La plateforme fournit une surface de capacités complète pour l'analyse de données à grande échelle, incluant le support pour l'apprentissage automatique distribué, l'intégration du calcul haute performance et le traitement de données parallèle. Elle offre des outils étendus pour la gestion du cycle de vie des clusters, le profilage des performances et la surveillance en temps réel de l'exécution des tâches. Les utilisateurs peuvent déployer ces environnements sur diverses infrastructures, incluant le matériel local, les fournisseurs cloud, les systèmes conteneurisés et les clusters de calcul haute performance.

    Wraps functions into lazy objects to defer execution until results are explicitly requested.

    Pythondasknumpypandas
    Voir sur GitHub↗13,746
  • libvips/libvipsAvatar de libvips

    libvips/libvips

    11,085Voir sur GitHub↗

    Libvips is a C-based image processing library designed to manipulate large visual assets through a low-memory, parallel processing pipeline. It functions as a streaming image processor that avoids loading entire files into system memory, enabling the handling of massive images in resource-constrained environments. The library distinguishes itself through a demand-driven architecture that constructs a deferred execution plan, computing only the necessary pixels for a final output. By utilizing a cache-friendly tiled processing model and memory-mapped file access, it minimizes latency and redun

    Processes images by pulling small rectangular regions through a processing graph to avoid loading entire files into system memory.

    Cccppgif
    Voir sur GitHub↗11,085
  • jeremyskinner/fluentvalidationAvatar de JeremySkinner

    JeremySkinner/FluentValidation

    9,728Voir sur GitHub↗

    FluentValidation is a strongly-typed data validation library for .NET. It functions as a rule engine and input validation framework used to define and execute complex business rules and constraints for data objects. The library utilizes a fluent interface API, allowing the construction of readable and declarative validation constraints through method chaining. It leverages generics and lambda expressions to enforce data integrity and business logic at compile time. The project covers the enforcement of business rules, strongly-typed data validation, and input sanitization workflows to verify

    Defers the processing of validation rules until a specific trigger method is explicitly called.

    C#
    Voir sur GitHub↗9,728
  • olive-editor/oliveAvatar de olive-editor

    olive-editor/olive

    9,052Voir sur GitHub↗

    Olive is an open-source non-linear video editor and multi-track compositor designed for digital video production. It provides a desktop application for arranging, cutting, and trimming video and audio clips on a timeline to create high-resolution cinematic content. The software employs a proxy-based editing workflow, substituting high-resolution assets with low-bitrate temporary files to maintain fluid playback and scrubbing performance. This is supported by a non-destructive timeline engine that maps media clips using metadata pointers rather than modifying original source files. The system

    Implements a graph-based system to calculate final frame outputs by executing effects and transitions during export.

    C++
    Voir sur GitHub↗9,052
  • drmaciver/hypothesisAvatar de DRMacIver

    DRMacIver/hypothesis

    8,702Voir sur GitHub↗

    Hypothesis is a property-based testing library for Python that automatically generates randomized input data to identify bugs and edge cases. It functions as an automated edge case finder and test data generator, creating diverse synthetic datasets based on defined strategies to stress test application logic. The library includes a failing case shrinker that simplifies complex failing test inputs into the smallest possible examples to accelerate debugging. It also provides a mechanism for bug reproduction simplification by reducing the size of the input that triggers a failure. The project c

    Defers the generation of complex data structures until they are required by the test execution logic.

    Python
    Voir sur GitHub↗8,702
  • bitemyapp/learnhaskellAvatar de bitemyapp

    bitemyapp/learnhaskell

    8,026Voir sur GitHub↗

    This project is a comprehensive functional programming curriculum and learning resource for Haskell. It provides sequenced educational paths and technical reference guides designed to take developers from beginner to advanced levels of proficiency. The project distinguishes itself through a deep focus on theoretical and technical foundations, offering detailed studies on type theory, category theory, and runtime internals. It includes a dedicated performance handbook for optimizing execution speed and memory management, as well as an ecosystem guide for managing development tools and editor c

    Provides detailed studies on the lazy evaluation runtime model and its impact on execution flow.

    Makefile
    Voir sur GitHub↗8,026
  • hips/autogradAvatar de HIPS

    HIPS/autograd

    7,458Voir sur GitHub↗

    Autograd is an automatic differentiation library and numerical gradient engine for Python. Its primary purpose is to compute the gradients of mathematical functions to enable numerical optimization and the training of mathematical models. The library automates the calculation of derivatives to simplify the implementation of optimization algorithms. This supports activities such as machine learning research, gradient-based learning, and the optimization of numerical models.

    Defers the numerical calculation of derivatives until an explicit backward call is triggered on a scalar.

    Python
    Voir sur GitHub↗7,458
  • ibis-project/ibisAvatar de ibis-project

    ibis-project/ibis

    6,574Voir sur GitHub↗

    Ibis is a portable Python dataframe library and multi-backend query engine that provides a unified interface for executing data transformations across diverse compute engines. It functions as a Python SQL expression compiler and dialect transpiler, allowing users to define data logic once and execute it across cloud warehouses, embedded databases, and distributed clusters without rewriting code. The project distinguishes itself through a database backend abstraction that decouples transformation logic from the underlying execution engine. It enables polyglot data workflows by mixing raw SQL s

    Builds a chain of operations as a lazy expression tree that only materializes results upon explicit request.

    Pythonbigqueryclickhousedatabase
    Voir sur GitHub↗6,574
  • node-config/node-configAvatar de node-config

    node-config/node-config

    6,427Voir sur GitHub↗

    This is a configuration manager for Node.js applications that handles hierarchical settings across different deployment environments. It functions as an environment-based loader and settings parser that merges default configurations with overrides based on the current runtime context and hostname. The project distinguishes itself through a priority-based merge strategy that incorporates environment variables, command-line arguments, and external data sources to supersede file-based settings. It supports multi-format parsing for JSON, YAML, JavaScript, and TypeScript files, and allows for cust

    Provides the ability to define configuration values as functions that execute after all environment overrides are merged.

    JavaScriptconfigdeploymentproperties
    Voir sur GitHub↗6,427
Préc.12Suivant
  1. Home
  2. Software Engineering & Architecture
  3. Lazy Evaluation Patterns

Explorer les sous-tags

  • Deferred Execution Graphs4 sous-tagsData structures that represent image operations as deferred computation plans, executing only when output is requested. **Distinct from Lazy Evaluation Patterns:** Distinct from Lazy Evaluation Patterns: focuses on the graph-based representation of deferred image operations.
  • Demand-Driven Evaluators1 sous-tagExecution models that defer data calculation until explicitly requested by the user. **Distinct from Lazy Evaluation Patterns:** Distinct from general lazy patterns: specifically focuses on demand-driven intelligence for editor responsiveness.
  • Gradient EvaluationDeferred calculation of derivatives until a backward pass is explicitly triggered. **Distinct from Lazy Evaluation Patterns:** Specializes lazy evaluation patterns specifically for the timing of gradient calculations in autodiff
  • Lazy Thunk GraphsData structures representing deferred computations as trees of nodes. **Distinct from Lazy Evaluation Patterns:** Distinct from general lazy patterns: focuses on the graph-based storage of deferred computation thunks.