DuckCorp

DuckCorp Dico

(RFC 2229 compliant dictionary server)

Found one definition

  1.                 From The Free On-line Dictionary of Computing (19 January 2023):
                    

    call-by-name CBN

    <reduction> (CBN) (Normal order reduction, leftmost, outermost reduction). An argument passing convention (first provided by ALGOL 60?) where argument expressions are passed unevaluated. This is usually implemented by passing a pointer to a thunk - some code which will return the value of the argument and an environment giving the values of its free variables.

    This evaluation strategy is guaranteed to reach a normal form if one exists.

    When used to implement functional programming languages, call-by-name is usually combined with graph reduction to avoid repeated evaluation of the same expression. This is then known as call-by-need.

    The opposite of call-by-name is call-by-value where arguments are evaluated before they are passed to a function. This is more efficient but is less likely to terminate in the presence of infinite data structures and recursive functions.

    Arguments to macros are usually passed using call-by-name.

    (2006-05-27)