It is not just convenience. For example agents don't provide functionality like buffering, backpressure and select aka alts. If you send an action to an agent you don't get to know when it's done or to choose what to do if it is currently busy.
On Monday, September 19, 2016 at 11:49:13 AM UTC+2, Matan Safriel wrote: > > Thanks, and I put the blog post on my reading list. > Although I can't avoid thinking that we already have asynchronous idioms > in the core language itself, like agents. I think the crux for server-side > is more about the convenient piping, rather than the mere asynchronism > itself, but I might be wrong in any of this. > > On Mon, Sep 19, 2016 at 9:14 AM, Mond Ray <mondr...@gmail.com > <javascript:>> wrote: > >> Pushing asynchrony further into the stack is useful for reliability and >> fault tolerance. We can also use it as a basis for Complex Event Processing >> using time series windows. >> >> I wrote up a few examples in my blog >> <http://blog.opengrail.com/clojure/events/streams/2016/02/06/event-stream-intro.html> >> >> if you have the time to check out a longer explanation with code. >> >> I recently wrote a small set of functions to enable HTML5 Server Sent >> Events from any Kafka topic which also uses core.async (with an example >> using Aleph and Compojure). You might like to check that repo >> <https://github.com/raymcdermott/kafka-sse-clj> out too. >> >> Ray >> >> On Sunday, 18 September 2016 08:37:38 UTC+2, Matan Safriel wrote: >>> >>> Hi, >>> >>> It's very easy to see how core.async solves callback hell for front-end >>> development with clojurescript. >>> In what use cases would you use it for server-side? we already have >>> non-blocking IO from Java, and we have clojure agents. So what's a bunch of >>> salient use cases? >>> Are there prominent clojure http server implementations which rely on it >>> for transcending the threaded web service paradigm? >>> >>> Thanks, >>> Matan >>> >>> -- >> You received this message because you are subscribed to the Google >> Groups "Clojure" group. >> To post to this group, send email to clo...@googlegroups.com >> <javascript:> >> Note that posts from new members are moderated - please be patient with >> your first post. >> To unsubscribe from this group, send email to >> clojure+u...@googlegroups.com <javascript:> >> For more options, visit this group at >> http://groups.google.com/group/clojure?hl=en >> --- >> You received this message because you are subscribed to a topic in the >> Google Groups "Clojure" group. >> To unsubscribe from this topic, visit >> https://groups.google.com/d/topic/clojure/peJXvE0nBZs/unsubscribe. >> To unsubscribe from this group and all its topics, send an email to >> clojure+u...@googlegroups.com <javascript:>. >> For more options, visit https://groups.google.com/d/optout. >> > > -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.