perl-Scope-Escape - reified escape continuations

Property Value
Distribution ALT Linux Sisyphus
Repository Autoimports i586
Package filename perl-Scope-Escape-0.005-alt2.1.i586.rpm
Package name perl-Scope-Escape
Package version 0.005
Package release alt2.1
Package architecture i586
Package type rpm
Category Development/Perl
Homepage -
License -
Maintainer -
Download size 47.37 KB
Installed size 47.37 KB
This module provides a generalised facility for non-local control transfer
(jumping between stack frames), based on the well-thought-out semantics
of Common Lisp.  It provides operators that will capture and reify the
escape (return) continuation of the current stack frame.  The stack frame
can then be returned from, at (nearly) any time while it still exists,
via the reified continuation.  This applies not only to subroutine stack
frames, but also to intermediate frames for code blocks, and other kinds
of stack frame.  This facility can be used directly, or wrapped up to
build a more structured facility, as is done by the Scope::Escape::Sugar manpage.
The system of reified escape continuations is fundamentally different
from Perl's native `eval'/`die' exception facility.  With `die',
the code initiating the non-local transfer has no control over where
it will go to.  Each `eval' frame gets to decide whether it wants
to act as the target of the thrown exception, but it must make this
decision based almost entirely on what was recorded in the exception
object, because the stack frames between the `die' and the `eval'
have already been unwound by that time.  With reified continuations,
however, the code initiating the transfer determines where it will go to
(by choosing which continuation to use), and that decision can be made
with all information about the circumstances still available.
A reified escape continuation appears in Perl as a function object.
Calling the function results in returning from the stack frame that is the
target of the continuation.  Values passed to the function are returned
from the target stack frame.  Optionally, the continuation may be blessed
into the the Scope::Escape::Continuation manpage class.  This class provides a
method-based interface to the continuation: transferring through the
continuation, and querying its state, can be performed by method calls
on the continuation object.  The methods can also be called directly,
as functions, on unblessed continuation functions.


Package Version Architecture Repository
perl-Scope-Escape-0.005-alt2.1.x86_64.rpm 0.005 x86_64 Autoimports
perl-Scope-Escape - - -


Name Value
/usr/lib/perl5 - - - - - -
perl(Devel/ >= 0.003
perl( -
perl( -
rpmlib(PayloadIsLzma) -
rpmlib(SetVersions) -
rtld(GNU_HASH) -


Name Value
perl(Scope/ = 0.005
perl-Scope-Escape = 0.005-alt2.1


Type URL
Binary Package perl-Scope-Escape-0.005-alt2.1.i586.rpm
Source Package perl-Scope-Escape-0.005-alt2.1.src.rpm

Install Howto

  1. Add the following line to /etc/apt/sources.list:
    rpm [Sisyphus] i586 autoimports
    rpm [Sisyphus] noarch autoimports
  2. Update the package index:
    # sudo apt-get update
  3. Install perl-Scope-Escape rpm package:
    # sudo apt-get install perl-Scope-Escape



See Also

Package Description
perl-Scope-OnExit-0.02-alt4.1.i586.rpm Running code on scope exit
perl-Search-Tools-1.007-alt1.1.i586.rpm high-performance tools for building search applications
perl-Search-WuManber-0.25-alt4.1.i586.rpm perl module Search-WuManber
perl-Search-Xapian- Xapian perl bindings
perl-SelfUnzip-0.01-alt4.1.i586.rpm Perl extension for blah blah blah
perl-Sentinel-0.06-alt1.1.i586.rpm create lightweight SCALARs with get/set callbacks
perl-Sereal-Splitter-0.840-alt2.1.i586.rpm splits a Sereal blob in chunks of roughly the same size
perl-Session-Token-1.503-alt4.1.i586.rpm Secure, efficient, simple random session token generation
perl-Set-IntSpan-Fast-XS-0.05-alt4.1.i586.rpm Faster Set::IntSpan::Fast
perl-Set-IntervalTree-0.12-alt1.1.i586.rpm Perform range-based lookups on sets of ranges
perl-Set-Product-XS-0.06-alt1.i586.rpm speed up Set::Product
perl-SetDualVar-1.0-alt4.1.i586.rpm perl module SetDualVar
perl-ShiftJIS-CP932-MapUTF-1.03-alt4.1.i586.rpm transcode between Microsoft CP932 and Unicode
perl-ShiftJIS-String-1.11-alt4.1.i586.rpm functions to manipulate Shift-JIS strings
perl-ShiftJIS-X0213-MapUTF-0.40-alt4.1.i586.rpm conversion between Shift_JIS-2004/Shift_JISX0213 and Unicode