• In programming language theory, lazy evaluation, or call-by-need, is an evaluation strategy which delays the evaluation of an expression until its value...
    30 KB (3,549 words) - 22:32, 24 May 2025
  • before invoking the function. Lazy evaluation does not evaluate function arguments unless their values are required to evaluate the function call itself....
    88 KB (8,697 words) - 20:16, 4 July 2025
  • Short-circuit evaluation, minimal evaluation, or McCarthy evaluation (after John McCarthy) is the semantics of some Boolean operators in some programming...
    18 KB (1,452 words) - 16:15, 22 May 2025
  • and some authors define lazy evaluation as normal order evaluation or vice-versa, or confuse non-strictness with lazy evaluation.: 43–44  Boolean expressions...
    46 KB (5,225 words) - 20:45, 6 June 2025
  • non-strict evaluation, an evaluation strategy where the arguments to a function are not immediately evaluated. This form of non-strict evaluation is also...
    5 KB (583 words) - 15:34, 22 April 2025
  • in call by need. Lazy futures are of use in languages which evaluation strategy is by default not lazy. For example, in C++11 such lazy futures can be created...
    44 KB (4,638 words) - 13:07, 9 February 2025
  • Strict programming language (category Evaluation strategy)
    allows the user to define non-strict functions, and hence may allow lazy evaluation. In most non-strict languages, the non-strictness extends to data constructors...
    6 KB (572 words) - 23:50, 6 July 2025
  • are normally eager evaluation, but a lazy evaluation option exists, indicated by the use of the d operator. Usually, to evaluate an expression of the...
    8 KB (964 words) - 02:59, 11 August 2024
  • typed, purely functional programming language with type inference and lazy evaluation. Haskell pioneered several programming language features such as type...
    50 KB (4,580 words) - 14:07, 4 July 2025
  • "Similar Functional Languages". Retrieved 26 November 2013. "(Scheme) 17. Lazy Evaluation". Retrieved 30 April 2020. "Records - Revised6 Report on the Algorithmic...
    22 KB (820 words) - 14:29, 25 May 2025
  • implementation of Hope used strict evaluation, but there have since been lazy evaluation versions and strict versions with lazy constructors. A successor language...
    6 KB (493 words) - 15:35, 23 March 2025
  • (1993). Partial Evaluation and Automatic Program Generation. Prentice Hall. ISBN 9780130202499. Danvy, O., ed. (1999). "Partial Evaluation and Semantics-Based...
    5 KB (591 words) - 09:45, 15 July 2024
  • to allow a lazy evaluation strategy in programs, unlike the traditional eager evaluation strategy of Standard ML. While Haskell uses the lazy model by default...
    5 KB (445 words) - 10:02, 15 May 2024
  • expensive process until the first time it is needed. It is a kind of lazy evaluation that refers specifically to the instantiation of objects or other resources...
    26 KB (2,813 words) - 01:36, 25 June 2025
  • functional in the sense that it did not use lazy evaluation. Okasaki simplified the data structure by using lazy evaluation with a bootstrapped data structure...
    20 KB (2,281 words) - 04:04, 7 July 2024
  • Thumbnail for Raku (programming language)
    list transformations, and parameter passing. Related to lazy evaluation is the construction of lazy lists using gather and take, behaving somewhat like generators...
    47 KB (5,543 words) - 02:00, 10 April 2025
  • else n * f(n - 1)) (5) This works because R uses lazy evaluation. Languages that use strict evaluation, such as Python, C++, and other strict programming...
    36 KB (5,182 words) - 18:42, 26 June 2025
  • summarized below. Lazy evaluation is particularly interesting in a purely functional language: 31  because the order of the evaluation never changes the...
    11 KB (1,392 words) - 19:47, 2 April 2024
  • programs are evaluated, since eager evaluation will return the same result as lazy evaluation. However, it is still possible that an eager evaluation may not...
    8 KB (907 words) - 00:32, 6 June 2025
  • the client. Remote evaluation belongs to the family of mobile code, within the field of code mobility. An example for remote evaluation is grid computing:...
    2 KB (197 words) - 04:10, 23 April 2024
  • Thumbnail for Structure and Interpretation of Computer Programs
    Evaluation Modeling with Mutable Data Concurrency: Time Is of the Essence Streams The Metacircular Evaluator Variations on a Scheme – Lazy Evaluation...
    9 KB (799 words) - 21:16, 10 March 2025
  • Dynamic loading Proxy pattern Lazy evaluation Lazy initialization Software design pattern "What is Lazy Loading | Lazy vs. Eager Loading | Imperva". Learning...
    8 KB (797 words) - 18:15, 20 April 2025
  • Thumbnail for Scala (programming language)
    Scheme, Standard ML, and Haskell), including currying, immutability, lazy evaluation, and pattern matching. It also has an advanced type system supporting...
    109 KB (10,214 words) - 08:53, 4 June 2025
  • Haskell but with important differences: Omega uses strict evaluation (Hugs uses lazy evaluation); Ability to introduce new kinds; Allows writing functions...
    2 KB (138 words) - 01:00, 15 October 2024
  • programming languages, ML uses eager evaluation, meaning that all subexpressions are always evaluated, though lazy evaluation can be achieved through the use...
    13 KB (1,461 words) - 18:17, 29 April 2025
  • programming paradigms, including logic, functional (both lazy evaluation and eager evaluation), imperative, object-oriented, constraint, distributed, and...
    16 KB (1,837 words) - 03:34, 17 January 2025
  • programming concepts. It was first used for early experimentation with lazy evaluation. An implementation based on a stack, environment, control, dump virtual...
    6 KB (565 words) - 09:48, 14 December 2024
  • Thumbnail for PureScript
    defined as having a strict evaluation strategy, although there are non-conforming back-ends which implement a lazy evaluation strategy. It is free and open-source...
    9 KB (744 words) - 16:34, 20 June 2025
  • Generating and computing with streams requires lazy evaluation, either implicitly in a lazily evaluated language or by creating and forcing thunks in an...
    4 KB (305 words) - 10:21, 1 February 2025
  • Thumbnail for F Sharp (programming language)
    F# is an expression-based language using eager evaluation and also in some instances lazy evaluation. Every statement in F#, including if expressions...
    53 KB (4,085 words) - 04:08, 6 June 2025