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

Implementation of ReactiveStreams for RX/IX #24

Open
SeanFarrow opened this issue Sep 17, 2016 · 14 comments
Open

Implementation of ReactiveStreams for RX/IX #24

SeanFarrow opened this issue Sep 17, 2016 · 14 comments

Comments

@SeanFarrow
Copy link

Hi,

Does anyone know of an implementation of ReactiveStreams for RX/IX?
Any help appreciated.
Cheers
Sean.

@SeanFarrow SeanFarrow changed the title Implementation of ReactiveSTreams ofr RX/IX Implementation of ReactiveStreams for RX/IX Sep 17, 2016
@marcpiechura
Copy link
Contributor

@SeanFarrow not that I know, RX.java has implemented the Reactive Streams interfaces but RX.net has not.

See also dotnet/reactive#19

@akarnokd
Copy link
Contributor

I have started Reactor-Core.NET a while back which does use RS.NET and is Rx style. It's incomplete as I have now other demanding responsibilities.

@SeanFarrow
Copy link
Author

Should we look at doing something. I’m happy to take this on, as I’m using both RX and Akka.streams.
If someone could create a repo, then I can work on this.
Cheers
Sean.
From: David Karnok [mailto:[email protected]]
Sent: 21 September 2016 08:20
To: reactive-streams/reactive-streams-dotnet [email protected]
Cc: Sean Farrow [email protected]; Mention [email protected]
Subject: Re: [reactive-streams/reactive-streams-dotnet] Implementation of ReactiveStreams for RX/IX (#24)

I have started Reactor-Core.NEThttps://github.com/reactor/reactor-core-dotnet a while back which does use RS.NET and is Rx style. It's incomplete as I have now other demanding responsibilities.


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com//issues/24#issuecomment-248531317, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ABY1fk62k-MUy1ucYuA0nqRBr863_e9gks5qsNqMgaJpZM4J_hGB.

@akarnokd
Copy link
Contributor

I’m happy to take this on

What exactly would you like to do? RS requires a different architecture and I don't think you can change Rx.NET gradually to RS. (I have started porting RxJava even longer ago but that died off as well and uses 3rd generation architecture only.)

@SeanFarrow
Copy link
Author

I’m looking to implement the ReactiveStreams interfaces for RX.net.

From: David Karnok [mailto:[email protected]]
Sent: 21 September 2016 08:47
To: reactive-streams/reactive-streams-dotnet [email protected]
Cc: Sean Farrow [email protected]; Mention [email protected]
Subject: Re: [reactive-streams/reactive-streams-dotnet] Implementation of ReactiveStreams for RX/IX (#24)

I’m happy to take this on

What exactly would you like to do? RS requires a different architecture and I don't think you can change Rx.NET gradually to RS. (I have started porting RxJavahttps://github.com/akarnokd/RxAdvancedFlow even longer ago but that died off as well and uses 3rd generation architecture only.)


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com//issues/24#issuecomment-248536672, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ABY1foWaD4HLzDJigoooSFg_IHLEzuV0ks5qsODcgaJpZM4J_hGB.

@smaldini
Copy link

Why not contributing to Reactor Core .NET, we're looking for core contributors. We already are struggling with some semantic discussions between Rx and Reactor, however it seems audiences increasingly agree on an explicit separation between backpressure driven flows as implemented by Flux (/Mono) and non backpressure flows as implemented by Observable etc.

@SeanFarrow
Copy link
Author

Hi,

Could you provide a link to the repo?
Cheers
Sean.
From: Stephane Maldini [mailto:[email protected]]
Sent: 21 September 2016 12:47
To: reactive-streams/reactive-streams-dotnet [email protected]
Cc: Sean Farrow [email protected]; Mention [email protected]
Subject: Re: [reactive-streams/reactive-streams-dotnet] Implementation of ReactiveStreams for RX/IX (#24)

Why not contributing to Reactor Core .NET, we're looking for core contributors. We already are struggling with some semantic discussions between Rx and Reactor, however it seems audiences increasingly agree on an explicit separation between backpressure driven flows as implemented by Flux (/Mono) and non backpressure flows as implemented by Observable etc.


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com//issues/24#issuecomment-248587837, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ABY1fqQyPCJPO7aW_x7thcSQAQMUPte4ks5qsRksgaJpZM4J_hGB.

@smaldini
Copy link

@SeanFarrow
Copy link
Author

Hi,

Thanks, what problems/discussions are you having currently?
I’m trying to work out how I could contribute.

From: Stephane Maldini [mailto:[email protected]]
Sent: 21 September 2016 12:49
To: reactive-streams/reactive-streams-dotnet [email protected]
Cc: Sean Farrow [email protected]; Mention [email protected]
Subject: Re: [reactive-streams/reactive-streams-dotnet] Implementation of ReactiveStreams for RX/IX (#24)

https://github.com/reactor/reactor-core-dotnet


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com//issues/24#issuecomment-248588382, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ABY1fvMAGbskV4ayELIzhGzgHdPIOn8dks5qsRnJgaJpZM4J_hGB.

@akarnokd
Copy link
Contributor

@SeanFarrow the lack of time. What we want and how we want it is already set, the utility/tool support is also there. We'd like to have these added:

https://github.com/reactor/reactor-core-dotnet/blob/master/Reactor.Core/Mono.cs#L67

~50% of the operators are missing.

https://github.com/reactor/reactor-core-dotnet/blob/master/Reactor.Core/Flux.cs#L2881

~10% of the operators are missing.

They can be adapted from https://github.com/reactor/reactor-core/blob/master/src/main/java/reactor/core/publisher/Flux.java and https://github.com/reactor/reactor-core/blob/master/src/main/java/reactor/core/publisher/Mono.java mostly in a straightforward manner.

@SeanFarrow
Copy link
Author

Ok, let me take a look and see what I can do!
Are there any examples of putting this together with rx?

From: David Karnok [mailto:[email protected]]
Sent: 21 September 2016 13:20
To: reactive-streams/reactive-streams-dotnet [email protected]
Cc: Sean Farrow [email protected]; Mention [email protected]
Subject: Re: [reactive-streams/reactive-streams-dotnet] Implementation of ReactiveStreams for RX/IX (#24)

@SeanFarrowhttps://github.com/SeanFarrow the lack of time. What we want and how we want it is already set, the utility/tool support is also there. We'd like to have these added:

https://github.com/reactor/reactor-core-dotnet/blob/master/Reactor.Core/Mono.cs#L67

~50% of the operators are missing.

https://github.com/reactor/reactor-core-dotnet/blob/master/Reactor.Core/Flux.cs#L2881

~10% of the operators are missing.

They can be adapted from https://github.com/reactor/reactor-core/blob/master/src/main/java/reactor/core/publisher/Flux.java and https://github.com/reactor/reactor-core/blob/master/src/main/java/reactor/core/publisher/Mono.java mostly in a straightforward manner.


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com//issues/24#issuecomment-248594588, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ABY1fuqJHcxiNnKfrrn0s3Cskwkt1troks5qsSDcgaJpZM4J_hGB.

@akarnokd
Copy link
Contributor

Given an IObservable we have a ToFlux extension method to get in and ToObservable to get out. We don't depend on Rx.NET but only on standard C# IObservable and IObserver.

@SeanFarrow
Copy link
Author

Ok, and is it possible to convert to a ReactiveStreams publisher? That’s what I’m after!

From: David Karnok [mailto:[email protected]]
Sent: 21 September 2016 14:13
To: reactive-streams/reactive-streams-dotnet [email protected]
Cc: Sean Farrow [email protected]; Mention [email protected]
Subject: Re: [reactive-streams/reactive-streams-dotnet] Implementation of ReactiveStreams for RX/IX (#24)

Given an IObservable we have a ToFlux extension method to get in and ToObservable to get out. We don't depend on Rx.NET but only on standard C# IObservable and IObserver.


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com//issues/24#issuecomment-248608114, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ABY1fpXiHvPoL3mFEwORGCTWSqxyI3yoks5qsS1tgaJpZM4J_hGB.

@akarnokd
Copy link
Contributor

IFlux is an IPublisher and you can use Wrap to make an arbitrary IPublisher into an IFlux. We use this to avoid bloating the extension method space of IPublisher.

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

No branches or pull requests

4 participants