Amp is a non-blocking concurrency framework for PHP providing primitives to manage concurrency such as an event loop, promises, and asynchronous iterators.
It implements coroutines using PHP's generators to avoid callback or then() hells. Promise consumption works without callbacks and allows ordinary catch clauses just as synchronous code for handling errors.