3 ms·
What is good about insisting that the two combine functions be binary? And what is good about forcing a specific method of forking (evenly sized chunks)? The m
by kazagistar 13y ago
What is good about insisting that the two combine functions be binary? And what is good about forcing a specific method of forking (evenly sized chunks)?
The more fundamental idea seems to be to use three steps: a method which takes a collection into sublists (fork), a method which takes any number of parameters and reduces them in a single thread (reduce), and a method which takes some number of reducer results and combines then (join). For something like string concatenation, non-binary can help avoid the need for an intermediate linked list. For something like matrix multiplication, or something that might require spacial partitioning, explicit forking is really important, as size and order can have have a major performance impact respectively.
Then again, this is a decent default approximation for many cases.