3 ms·
There is rayon in rust land. This is a pretty different (simpler) thing.
by ibotty 7y ago
There is rayon in rust land. This is a pretty different (simpler) thing.
- fnord123 7y agoRayon uses iterators. Iterators are the dual of first order functions. Iterators are superior because they are more general. (You can implement pmap using iterators. You cannot implement iterators using pmap.)
- wwright 7y agoDoes Rayon use iterators, or just iterator-like combinators? I don’t think a for-loop would work with Rayon, would it? You can also definitely implement iterators using first-order functions: const iterate = array => { const step = index => ({ value: array[index], next: () => step(index + 1) }); return step(0); } // add some combinators on top First order functions can in fact implement anything if you’re willing to accept some bad syntax and speed — that’s the Church-Turing equivalence.
- fnord123 7y agoHm. You're right. I hadn't used Rayon in so long I forgot it is indeed iterator-like combinators using an entry point called `par_iter`.