Global Information Lookup Global Information

Anonymous recursion information


In computer science, anonymous recursion is recursion which does not explicitly call a function by name. This can be done either explicitly, by using a higher-order function – passing in a function as an argument and calling it – or implicitly, via reflection features which allow one to access certain functions depending on the current context, especially "the current function" or sometimes "the calling function of the current function".

In programming practice, anonymous recursion is notably used in JavaScript, which provides reflection facilities to support it. In general programming practice, however, this is considered poor style, and recursion with named functions is suggested instead. Anonymous recursion via explicitly passing functions as arguments is possible in any language that supports functions as arguments, though this is rarely used in practice, as it is longer and less clear than explicitly recursing by name.

In theoretical computer science, anonymous recursion is important, as it shows that one can implement recursion without requiring named functions. This is particularly important for the lambda calculus, which has anonymous unary functions, but is able to compute any recursive function. This anonymous recursion can be produced generically via fixed-point combinators.

and 16 Related for: Anonymous recursion information

Request time (Page generated in 0.7974 seconds.)

Anonymous recursion

Last Update:

In computer science, anonymous recursion is recursion which does not explicitly call a function by name. This can be done either explicitly, by using a...

Word Count : 1513

Direct function

Last Update:

denotes recursion or self-reference by the function, and ∇∇ denotes self-reference by the operator. Such denotation permits anonymous recursion. Error...

Word Count : 4009

Anonymous function

Last Update:

a generically defined function, often a looping construct or recursion scheme. Anonymous functions are a convenient way to specify such function arguments...

Word Count : 9474

Categorical abstract machine

Last Update:

calculus Cartesian closed category Applicative computing systems Anonymous recursion Evaluation strategy Explicit substitution SKI combinator calculus...

Word Count : 349

Functional programming

Last Update:

depth of recursion. This could make recursion prohibitively expensive to use instead of imperative loops. However, a special form of recursion known as...

Word Count : 8445

Prolog syntax and semantics

Last Update:

call optimization (TCO) for deterministic predicates exhibiting tail recursion or, more generally, tail calls: A clause's stack frame is discarded before...

Word Count : 1964

Anaphoric macro

Last Update:

alambda function (alambda (n) (if (= n 0) 1 (* n (self (1- n))))) Anonymous recursion Hygienic macros Macro (computer science) Method chaining this (computer...

Word Count : 393

Lambda calculus

Last Update:

support recursion natively overcome this by referring to the function definition by name. Lambda calculus cannot express this: all functions are anonymous in...

Word Count : 11500

Typed lambda calculus

Last Update:

that uses the lambda-symbol ( λ {\displaystyle \lambda } ) to denote anonymous function abstraction. In this context, types are usually objects of a...

Word Count : 738

Haxe

Last Update:

is an optimizing compiler, and uses field and function inlining, tail recursion elimination, constant folding, loop unrolling and dead code elimination...

Word Count : 2358

LulzSec

Last Update:

impairment of a protected computer. He is suspected of using the name "recursion" and assisting LulzSec in their early hack against Sony Pictures Entertainment...

Word Count : 10585

Domain Name System

Last Update:

customers. In addition, many home networking routers implement DNS caches and recursion to improve efficiency in the local network. The client side of the DNS...

Word Count : 9100

JavaScript

Last Update:

n = Math.round(n); } // The above checks need not be repeated in the recursion, hence defining the actual recursive part separately below. // The following...

Word Count : 9292

Lambda lifting

Last Update:

allow mutual recursion, which is, in a sense, more lifted than is supported in lambda calculus. Lambda calculus does not support mutual recursion and only...

Word Count : 8428

OCaml

Last Update:

features a static type system, type inference, parametric polymorphism, tail recursion, pattern matching, first class lexical closures, functors (parametric...

Word Count : 3909

Perl language structure

Last Update:

(typically because no change to the current stack is required), and in deep recursion, tail calling can have substantial positive impact on performance, because...

Word Count : 4016

PDF Search Engine © AllGlobal.net