lihaoyi/scala.rx

Reactive streams

Closed this issue · 7 comments

Are there any plans to create reactive streams like Akka Streams or Monix Observable?

The main idea being that with a stream, often only the last element added needs to be pushed through the flow and used for recalculation, rather than the whole collection.

I don't have any plans to do that. Its probably possible to do that, but I don't really have a need for it. I would probably just use something like akka-streams for streaming, and fold over that stream to a Var/Rx to maintain state.

The main idea being that with a stream, often only the last element added needs to be pushed through the flow and used for recalculation, rather than the whole collection.

I don't understand what you mean by "the whole collection".

@fdietze If a have an Stream wrapped within an Rx (so, Rx[Stream[_]]) then I don't want the downstream consumer to have to go through the whole stream when a new element is added.

@plentylife Do you know of any library which is able to do this? The only one I heard of is MetaRx with its Buffers and Delta-Objects: http://metastack.pl/metarx/latest.html#buffers

I think there is a misunderstanding here. AFAIK neither Monix nor Akka Streams support the reactive collection handling you describe. Are you mixing up the terms Scala Streams and Reactive Streams? I could be wrong. So if you have an example or piece of documentation, please show me.

@plentylife What you describe can be found in this publication, though I'm not aware of any public library implementation.

Maier, Ingo, and Martin Odersky. "Higher-order reactive programming with incremental lists." European Conference on Object-Oriented Programming. Springer, Berlin, Heidelberg, 2013.