-
Notifications
You must be signed in to change notification settings - Fork 7.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Joins - Only plan upto 3 implemented in RxJava but Rx has 16 #1318
Comments
That 3 was tedious to implement and there was no one at the time who needed it or understood its use case. |
If you try to zip together about 16 streams in different combinations like DAG you will see how useful this is. Ideally there should a lot more than 16 as you will be dealing with a large number of streams to coordinate between in some cases. |
One problem is that the operator requires a function callback with that arity, but we have only up to Func9. I didn't understand the operator enough so I could try with FuncN: there might be no good way to generalize to any arity with FuncN. Adding the remaining 4-9 arity version is mostly mechanical; one could always use Rx.NET as cheat-sheet, but writing tests is cumbersome. |
I'b be really surprised any human can patterns over more than 3 streams by hand because of the combinatorial explosion. Are you generating the code? |
I certainly didn't. I saw Rx.NET use code generators on this. I'm not sure if we have anything similar available with Gradle and/or annotation processing. |
Then stop at 9 and N. When you have more function arity then add accordingly. |
Up to 9 was added ... closing out. |
Is it possible to have larger plans for joins.
(Also besace it is not is the core concerned about how optimised the implementation is.)
The text was updated successfully, but these errors were encountered: