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.
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.
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.
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.
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.
While I appreciate the angularisms and directives, it no longer feels like redux. I found that [angular-redux](https://github.com/angular-redux/store) was more my speed.