Ivan Kleshnin

Results 153 comments of Ivan Kleshnin

Seems like `pool` and `prop` end up glued together into a single prop. ```js import K from "kefir" let pool = K.pool() let prop = pool.toProperty(() => 0) let stream...

Yep, makes sense. I never used `plug` for async stuff so I didn't get what you're trying to demonstrate here at first.

@mehtonen-boox it matters and there's also a difference between static functions and methods. For example `K.merge([x1, x2])` may work differently than `x1.merge(x2)`, especially with cyclic dependencies...

Sorry for bad description. What I wanted to say is that sometimes: ```js x.skip(1).merge(y) ``` won't work as you need and `y.merge(x.skip(1))` is a different thing. So your only option...

In any case you shouldn't lose a stack trace. This is clearly a buggy behavior. ```js import K from "kefir" K.fromPromise(Promise.resolve("foo")).map(() => { return x.y }).observe( (x) => console.log("x:", x),...

> The problem is that we have to execute some code inside then callbacks, and if this code throws (which could happen because of bugs in user code) Promises want...

> The way promises work don't leave us much of a choice 😉 Promises do aggressive errors catching not us. At this moment, Kefir *does* agressive error catching. I'd like...

@AgentME promises are async already. `setTimeout` won't make any difference to DOM rendering because it's not `sync -> async` change. It's `async -> async (with different catching scope)` I think...

> I thought you'd lose part of the stack trace because you'd lose it's connection to the promise, but I realize now that's a devtools feature, not a promise error...

> Did I miss anything in the list? Seems legit to me. > setImmediate isn't implemeneted on all browsers Would require a polyfill https://github.com/YuzuJS/setImmediate/blob/master/setImmediate.js This polyfill is not tiny, but...