Skip to content
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

MPP Channel #201

Closed
pull-vert opened this issue Jan 9, 2018 · 7 comments
Closed

MPP Channel #201

pull-vert opened this issue Jan 9, 2018 · 7 comments

Comments

@pull-vert
Copy link

Hi !

Thanks a lot for providing a first great MPP support with #33

Is it possible to add a MPP Channel (with common & JS support) ? And why not a kotlinx-coroutines-reactive MPP version too ?

@elizarov
Copy link
Contributor

Porting channels/producers and actors is in the plans. Reactive MPP version does not make a lot of sense, since reactive libraries are all Java-specific. There are no true Kotlin-MPP reactive libraries out there yet. However, we might separately develop one based on the coroutines.

@pull-vert
Copy link
Author

pull-vert commented Jan 10, 2018

Nice thanks Elizarov, these plans for channels/producers and actors will be really appreciated !

I am currently writing a MPP reactive library using kotlinx-coroutines-reactive, based on the publish function that returns a reactive Publisher. In my opinion kotlinx-coroutines-reactive could be turned to a MPP project as it only depends on a few interfaces from reactive-streams.

Rxjava with kotlinx-coroutines-rx1, kotlinx-coroutines-rx2 and Reactor with kotlinx-coroutines-reactor are JVM only, I agree with you !

@elizarov
Copy link
Contributor

Reactive streams could be ported to Kotlin, but this is actually a bad idea. We can do much better with Kotlin. See this discussion: reactor/reactor-core#979

@pull-vert
Copy link
Author

Thanks a lot for this link, great performance improvments to come for my current reactive library project !

@ScottPierce
Copy link
Contributor

Not having channel in the common library is something I'm finding pretty painful right now.

@ScottPierce
Copy link
Contributor

Not having runBlocking in the common module is also painful.

@jcornaz
Copy link
Contributor

jcornaz commented May 31, 2018

@ScottPierce, the reason why runBlocking is missing is explained in #195. (Although I agree it is a bit painful)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants