FreeBSD.software
Home/devel/p5-Coro

p5-Coro

6.570,1devel

Coroutine process abstraction for perl

Coro started as a simple module that implemented a specific form of first class continuations called Coroutines. These basically allow you to capture the current point execution and jump to another point, while allowing you to return at any time, as kind of non-local jump, not unlike C's setjmp/longjmp. This is nowadays known as a Coro::State. One natural application for these is to include a scheduler, resulting in cooperative threads, which is the main use case for Coro today. Still, much of the documentation and custom refers to these threads as "coroutines" or often just "coros". A thread is very much like a stripped-down perl interpreter, or a process: Unlike a full interpreter process, a thread doesn't have its own variable or code namespaces - everything is shared. That means that when one thread modifies a variable (or any value, e.g. through a reference), then other threads immediately see this change when they look at the same variable or location.

$pkg install p5-Coro
metacpan.org/release/Coro
Origin
devel/p5-Coro
Size
418KiB
License
ART10, GPLv1+
Maintainer
sunpoet@FreeBSD.org
Dependencies
8 packages
Required by
8 packages

Dependencies (8)

Required By (8)