Re: [ClojureScript] Re: basic conceptual question: clojurescript & core.async

2016-08-08 Thread Moe Aboulkheir
Brian, The callback (C) is going to be invoked on the main thread (A), but everything else sounds good to me. There's a decent explanation here http://blog.mixu.net/2011/02/01/understanding-the-node-js-event-loop/ which I think generalises to other/similar runtimes. Take care, Moe On Mon, Aug 8

Re: [ClojureScript] Re: basic conceptual question: clojurescript & core.async

2016-08-08 Thread Brian Beckman
On Monday, August 8, 2016 at 6:30:14 AM UTC-7, Moe Aboulkheir wrote: > By no means is it typical that in a JS runtime, external interactions (I/O) > would block the execution thread - if that were the case, the callbacks would > not be necessary. > > > Take care, > Moe Let's see whether I unde

[ClojureScript] Re: basic conceptual question: clojurescript & core.async

2016-08-08 Thread Thomas Heller
You can have concurrency without parallelism. core.async is "A Clojure library designed to provide facilities for async programming and communication". Parallelism is just a bonus side-effect, but not required or even the goal. Reducers for example have the goal of parallelism over concurrency.

Re: [ClojureScript] Re: basic conceptual question: clojurescript & core.async

2016-08-08 Thread Moe Aboulkheir
By no means is it typical that in a JS runtime, external interactions (I/O) would block the execution thread - if that were the case, the callbacks would not be necessary. Take care, Moe -- Note that posts from new members are moderated - please be patient with your first post. --- You receive

[ClojureScript] Re: basic conceptual question: clojurescript & core.async

2016-08-08 Thread Brian Beckman
The quote puzzles me. I would be less puzzled if it said "... turns the Asynchronous-looking channel reads and write into Synchronous calls." I don't understand the source of asynchrony in single-threaded JavaScript. I can see that a go block can implement something equivalent to an iterator via

[ClojureScript] Re: basic conceptual question: clojurescript & core.async

2016-08-08 Thread Walter van der Laan
A quote from https://www.infoq.com/news/2013/07/core-async: "The "magic" of core.async is that internally it converts the body of each go block into a state machine and turns the synchronous-looking channel reads and writes into asynchronous calls." -- Note that posts from new members are mode