3 ms·
Your example is only calling Javascript directly. I think the OP meant that Clojurescript has not adapted to promises/async with its own (improved) version. You
by cutler 7y ago
Your example is only calling Javascript directly. I think the OP meant that Clojurescript has not adapted to promises/async with its own (improved) version. You simply have core.async which predates ES6 and so does not take advantage of the new async/yield features of ES6. It's about implementation and I agree with him that Clojurescript does not seem to be interested in adapting to the current JS standard.
- capableweb 7y ago> Clojurescript has not adapted to promises/async with its own (improved) version In general, that's not how the development of Clojure has happened in general. Clojure is a leader when it comes to realization of new ideas in software engineering, sitting at the frontlines. Probably due to it's lisp nature mixed with it's pragmatic leader. > core.async which predates ES6 and so does not take advantage of the new async/yield features of ES6 In general, in a Clojure(script) codebase, you don't have the same problems as in a JavaScript codebase. There is no need to change the implementation of a abstract thing like core.async (CSP in this case) just because there is a new way of doing it. > Clojurescript does not seem to be interested in adapting to the current JS standard This is true, and I think Clojure is trying to make a point of remaining like that. The JS Standard is evolving after what people want the most, not what it's designer think is the best. I guess this is the essence of the differences between Clojure and JS, one is leading one person, the other what people demand to have.
- blain_the_train 7y agoI can't speak with specially on those features. But so far, if I want something from js or a npm lib it's I straight up just use it via interopt. Is there a reason that doesn't work here?
- iLemming 7y ago> Clojurescript has not adapted to promises/async with its own (improved) version Why does it have to be in the core or even in core.async? There are libraries for that, e.g: https://github.com/funcool/promesa https://github.com/funcool/promesa