funcool

A channel for discussing and asking questions about Funcool libraries https://github.com/funcool/
niwinz 2019-09-15T12:39:27.000700Z

Hi! I was away from this chat for a while, but now i'm back 😄

niwinz 2019-09-15T12:41:17.002600Z

@ikitommi i have read your messages about promesa in the history https://clojurians-log.clojureverse.org/funcool/2019-07-05, and yes, promesa has some overhead on top of plain completabe future, just for make it behave in the same way as clojure.core/future (being aware of current dynamic scope and preserve it on the execution of the chained computation...

niwinz 2019-09-15T12:43:04.003400Z

Additionally, in 4.0.0-SNAPSHOT, a map', mapcat' and bind' variants are coming in jvm, that does not dispatches on all computations (uses thenApply instead of thenApplyAsync ...)

niwinz 2019-09-15T12:48:26.006700Z

I've been thinking about removing the dynamic scope awareness, and delegate it to user if he need it... but i'm still undecided...

ikitommi 2019-09-15T13:42:12.008500Z

meanwhile, @mpenet did a small wrapper for Java's CP too, https://github.com/mpenet/auspex. Not targetting js thou.

ikitommi 2019-09-15T13:45:21.009300Z

with my journeys with Scala futures, the implicit executor was always a mess. 👍:skin-tone-2: For explicit config.

👍 1
niwinz 2019-09-15T14:41:53.011100Z

hmm auspex looks very similar to the promesa... i think that removing the dynamic scope handling will do absolutelly the same with a very similar api..

niwinz 2019-09-15T20:11:05.012100Z

bumped promesa 4.0.0-SNAPSHOT with latest master, includes improvements on the execution model and removing the dynamic binding handling

niwinz 2019-09-15T20:11:30.012500Z

more details on the changelog and the doc/content.adoc

niwinz 2019-09-15T20:12:24.013400Z

with that changes, i think the overhead over plain completable future usage will be very small... (i will do some microbenchmark later)