keen/parallel

Source
parallel-collection[col] record
collection col
parallel[col] col parallel-collection(a col)
for-loop[out-col, out-elem, in-col, in-elem] out-col(a in-col parallel-collection, f out-elem shared(in-elem)) out-elem shared, in-elem shared, (out-col, out-elem) list-new, in-col size, (in-col, in-elem) some

For each element of a, runs f in parallel. Returns a collection of all the results of f.

If any call to f throws an exception, this will throw that too. (If multiple calls to f throw an exception, one will be thrown arbitrarily.) This will still wait for all calls to f to complete before returning.

for-loop[col, elem] void(a col parallel-collection, f void shared(elem)) elem shared, col size, (col, elem) some
For each element of a, runs f in parallel.
filter[out-col, in-col, elem, builder] out-col(a in-col parallel-collection, f bool shared(elem)) (out-col, elem) list-new, elem shared, in-col size, (in-col, elem) some
Runs f in parallel for each element of a and returns elements for which it was true.