Earlier quoted context omitted.
Some of it is definitely misleading. Saying that Akka forces you into a logging library when it can be used with log4j, logback, provides a bridge with slf4j, etc, is just being uncharitable. As is claiming that "commercial tools" are needed for monitoring when JMX can be used just as with Quasar. Same with labeling Akka's clustering support as "experimental". Akka dropped that status from the clustering module a whi…
This is most evident in the conclusion: "Akka [...] is a totalizing choice", "blocking is free", "Akka [...] the way to go if [...] you have embraced Scala", "Akka [...] betting on a framework and sticking with it [...] high rewrite price", on and on. In retrospect I would remove "a tad" from the last sentence of my original post.
Quasar and Akka – a Comparison
11–20 of 49 posts
Re: Quasar and Akka – a Comparison
#12Seems like a very one sided comparison. Most other posts from paralleluniverse have also come off this way.
Re: Quasar and Akka – a Comparison
#13Seems like a very one sided comparison. Most other posts from paralleluniverse have also come off this way.
Anytime I see "Not needed" instead of "No" in a feature comparison chart, I am inclined to just stop reading.
Re: Quasar and Akka – a Comparison
#14Seems like a very one sided comparison. Most other posts from paralleluniverse have also come off this way.
Re: Quasar and Akka – a Comparison
#15Re: Quasar and Akka – a Comparison
#16Saying Quasar supports Kotlin/Clojure as though Akka does not (considering both languages interop with Java) is unfair. There is a difference between bytecode manipulation making alternative JVM languages impossible vs just not having a language-idiomatic wrapper. There a few other parts I take slight umbrage with (e.g. pretending Akka is heavyweight, has deployment rules, incomplete integration information, etc) but…
Actually bytecode manipulation doesn't make JVM alternative languages impossible, on the opposite Quasar allows them to be easily integrated and investigation/work is ongoing to avoid even having to do that. Plus, depending on the language implementation, in some cases integration is just not needed. Of course you can use Akka with Kotlin (and Clojure, although not sure how convenient that would be) but there's no id…
Re: Quasar and Akka – a Comparison
#17BTW, no need to describe the implementation in terms of continuations. It's just enough (I think) to allocate function activation records on heap instead of statically allocated stack. (AFAIK continuations are also implemented similarly, although what I've read about Go, their call stack management is something more complex)
Also, I think the "actor model" is not the final solution for scalable distributed programming, it's just some initial, and IMHO pretty clumsy step. We will have better approaches soon.
Re: Quasar and Akka – a Comparison
#18Earlier quoted context omitted.
This is most evident in the conclusion: "Akka [...] is a totalizing choice", "blocking is free", "Akka [...] the way to go if [...] you have embraced Scala", "Akka [...] betting on a framework and sticking with it [...] high rewrite price", on and on. In retrospect I would remove "a tad" from the last sentence of my original post.
Can you expand on why you think these statements are not correct? I think they are thoroughly explained in the post.
* "blocking is free" is contradicted right up earlier in the post with "highlights the additional cost of the real lightweight threads in Quasar"
* I will admit, between these two choices, you must choose Akka if you embrace Scala. But the inverse is not true.
* I don't believe it's a high rewrite price any more than any other library is. Do I pay a high rewrite price for using any other abstraction? I mean I just have functions that return futures, but because I composed them with Akka I can't rewrite it?
In general I think it's unfair to make assumptions or opinions here. To compare objectively is one thing, but to say something is a choice one way, requires you code one way, etc is invalid.
Re: Quasar and Akka – a Comparison
#19Earlier quoted context omitted.
Actually bytecode manipulation doesn't make JVM alternative languages impossible, on the opposite Quasar allows them to be easily integrated and investigation/work is ongoing to avoid even having to do that. Plus, depending on the language implementation, in some cases integration is just not needed. Of course you can use Akka with Kotlin (and Clojure, although not sure how convenient that would be) but there's no id…
I'm really looking forward to when suspendable annotations are no longer needed, so there isn't any special work that needs to be done to support (for example) Scala.
Re: Quasar and Akka – a Comparison
#20Quasar is going the right direction - writing synchronous code is better - the code is simpler and cleaner. There is no inherent performance penalty in synchronous approach, it's just the runtime systems of many popular languages make it so - statically allocated stack, and some penalty of context switch via system call. In addition to the languages mentioned in the article (Go, Clojure core.async, Erlang), Gambit Sc…
It does not make any performance claims about them, as far as I know.