Echo JS 0.11.0

<~>

tracker1 comments

tracker1 2724 days ago. link 2 points
Memory will be similar, but the start time of browser instances will be reduced.  Chrome creates a separate management/runtime process for each tab/page.
tracker1 2725 days ago. link 1 point
Good mini-state option for smaller projects, or interactive reusable components.
tracker1 2725 days ago. link 1 point
Would love to see this tied in with redux-first-router.
tracker1 2725 days ago. link 5 points
It doesn't mutate, the immutable changes are abstracted via another library... however imho, it's no longer redux, but a prescriptive wrapper around it, and the usage is very alien compared to redux.  Also, I'm much more inclined to use redux-thunks with async functions, which works very well, and is easier to comprehend than the wrappers for saga.
tracker1 2725 days ago. link 2 points
why not use two pools... one for the browser, another for the page... this way multiple pages can exist against one browser?
tracker1 2733 days ago. link 1 point
But even then, the error handling completely breaks thenable conventions, which is a second function passed to then.  In the end, Promises/thenables have a convention and this breaks it without providing more value than callbacks, while creating a context object construct.
tracker1 2733 days ago. link 1 point
const Foo = {
      async then (done) {
        done(await request('https://foo.com'))
      }
    }

What happens when request throws an error (or the promise rejects)? ... in this case, there's no value to it.
tracker1 2734 days ago. link 2 points
Very cool... hadn't even considered some of the effects of smaller widgets like in the example.  Could be why so many sites are painful in mobile even.
tracker1 2734 days ago. link 1 point
While interesting, several of the examples don't account for errors, and are bad advice all around.  You're better off using async functions or explicitly using/returning proper promises, or at least account for error conditions.
[more]