Help language development. Donate to The Perl Foundation
# Manifesto Make a supply of the results of Promises  ## Synopsis A different version of the old 'sleep sort' ```raku use Manifesto; my $manifesto = Manifesto.new; for (^10).pick(*).map( -> $i { Promise.in($i + 0.5).then({ $i })}) -> $p { $manifesto.add-promise($p); } my $channel = Channel.new; react { whenever $manifesto -> $v { $channel.send: $v; } whenever $manifesto.empty { $channel.close; done; } } say $channel.list; ``` ## Description This manages a collection of Promise objects and provides a Supply of the result of the kept Promises. This is useful to aggregate a number of Promises to a single stream of results, which may then be used in, a _react_ or _supply_ block or otherwise tapped. ## Installation Assuming you have a working installation of Rakudo installed with *zef* you should be able to do either: zef install Manifesto # or from a local checkout zef install . Other equally capable installers may become available in the future. ## Support This is so simple I'm not sure there is much scope for many bugs, but if you have any questions, suggestions, patches or whatever please send them via [GitHub](https://github.com/jonathanstowe/Manifesto/issues) ## Copyright and Licence © Jonathan Stowe 2016 - 2021 This is free software, the terms are described in the [LICENCE](LICENCE) file in this repository.