meanings of Call with current continuation encyclopedia of Call with current continuation dictionary of Call with current continuation thesaurus on Call with current continuation books about Call with current continuation dreams about Call with current continuation
 Call with current continuation - Definition 

This page is about the computer science continuation. See analytic continuation for the use of the term in complex analysis; see Continuation War for the Finno-Soviet conflict during World War II; and see continuation application for the special type of patent application.

In computing, a continuation is a way to represent the execution state (i.e. the stack) of a program at a given point. Many languages have constructs that allow a programmer to save the current state as a continuation, and then to resume execution from that state at a later point in time. This technique is typical of functional programming, but in fact many programming languages exhibit such a feature under various names; specifically:

Support for continuations varies widely. A programming language supports re-entrant or first-class continuations if a continuation may be invoked repeatedly to re-enter the same context. (This use of the term "re-entrant" is distinct from its use in discussions of multitasking.)

If a continuation may only be used to escape the current context to a surrounding one, the language supports escape continuations. Many languages which do not explicitly support continuations support exception handling, which is equivalent to escape continuations and can be used for the same purposes. C's setjmp and longjmp are also equivalent: they can only be used to unwind the stack, not to restore a previously saved continuation.

First-class continuations can also be used to implement tail-call optimization. The presence of both first-class continuations and guaranteed tail-call optimization is one of the distinctions of the Scheme programming language from other Lisp languages.

Many programmers who are unaccustomed to continuations find them difficult to understand. In fact, the esoteric programming language Unlambda includes call-to-current-continuation as one of its features solely because of its resistance to understanding. The external links below illustrate the concept in more detail.

Continuations are also closely related via the Curry-Howard isomorphism to double negation translations from classical logic to intuitionistic logic and Peirce's law.

See also

External links


it:Continuazione

Copyright 2008 WordIQ.com - Privacy Policy  ::  Terms of Use  :: Contact Us  :: About Us
This article is licensed under the GNU Free Documentation License. It uses material from the Wikipedia article "Call with current continuation".