Future, akka-stream, scalaz-stream

前半はFutureやExecutionContextの話で、 後半はdjspiewakさんが 「akka-streamはpushでscalaz-streamはpullモデルだ」 と発表したことに関してviktorklangさんが「そうじゃない」というところから議論始まってるのがポイント 続きを読む
2
前へ 1 ・・ 3 4
Daniel Spiewak @djspiewak

@viktorklang @a4dev More like an abstraction induced limitation. :-) Useful tools that should work on Future but don’t understand EC.

2014-09-20 10:38:11
Lgd. Viktor Klang @viktorklang

@djspiewak I'm perpetually surprised at the low standard there is for encoding protocols with state machines in modern libraries/languages.

2014-09-20 10:38:17
Daniel Spiewak @djspiewak

@viktorklang @a4dev I have application level code that runs into similar problems, but it’s harder to exemplify in a tweet.

2014-09-20 10:38:22
Lgd. Viktor Klang @viktorklang

@djspiewak Make an ExecutionContextT and run over that instead? :-) /cc @a4dev

2014-09-20 10:39:22
Daniel Spiewak @djspiewak

@viktorklang It really is astonishing! It seems like such an obvious thing to make elegant.

2014-09-20 10:39:45
Daniel Spiewak @djspiewak

@viktorklang @a4dev Well yes, that would sort of do it. That’s effectively what Scalaz’s FutureMonad does internally.

2014-09-20 10:40:30
Lgd. Viktor Klang @viktorklang

@vikasdp I could write a blog post on Scala Futures, @djspiewak is much more knowledgeable than I when it comes to scalaz Futures.

2014-09-21 00:13:36
Lgd. Viktor Klang @viktorklang

@nuttycom 1)You create a promise, add computation to its future, you pass that future along, -> you complete the promise at your discretion.

2014-09-21 00:37:23
Lgd. Viktor Klang @viktorklang

@nuttycom or 2)you create your initial future with an EC you control the execution of, and then pass the future on to 3rd party. then run EC

2014-09-21 00:38:19
Ben Christensen @benjchristensen

@viktorklang @djspiewak Viktor, I don’t understand your statement here. RxJava is push unless the consumer is slow then it flips.

2014-09-23 02:08:03
Ben Christensen @benjchristensen

@viktorklang @djspiewak Ah, if I understand, you’re saying that Akka Streams and RxJava are dynamic push-pull, is that correct?

2014-09-23 02:10:22
Daniel Spiewak @djspiewak

@benjchristensen @viktorklang We were saying that earlier, Ben, just imprecisely. Akka streams and RxJava both do the same thing there.

2014-09-23 02:10:55
Daniel Spiewak @djspiewak

@benjchristensen @viktorklang Yep! In truth, scalaz-stream is also hybrid push/pull, but explicit (not dynamic) and slightly obfuscated.

2014-09-23 02:11:55
Ben Christensen @benjchristensen

@djspiewak @viktorklang got it, as this space evolves terminology changes too :-) and I’ve proven to be bad at naming things.

2014-09-23 02:14:38
Ben Christensen @benjchristensen

@djspiewak @viktorklang “reactive pull” is the name @headinthebox and I have been using for this dynamic push/pull model

2014-09-23 02:16:01
Daniel Spiewak @djspiewak

@benjchristensen @viktorklang @headinthebox Oh great, *another* meaning for the word "reactive"… ;-)

2014-09-23 02:21:17
Daniel Spiewak @djspiewak

@benjchristensen @viktorklang @headinthebox The real problem is that basically all serious stream frameworks are hybrids in some way.

2014-09-23 02:21:52
Daniel Spiewak @djspiewak

@benjchristensen @viktorklang @headinthebox If you don't have pull, your backpressure is non-existent. If you don't support push, bad perf.

2014-09-23 02:22:12
前へ 1 ・・ 3 4