redux-sagaの動きを調べた。 redux-sagaは redux-sagaで非同期処理と戦うで説明されているように、非同期処理などを直列プログラムのような形式(直接形式; direct style) で書くためのライブラリである。 そのためにタスクを導入し、その切り替えを制御している。 複数のタスクを協調制御するという点で、コルーチンや軽量スレッド、fiberなどに類似していると感じた。 🔎対象 redux-saga v0.15.3を対象とする。ただし一部コードは説明のためにエラー処理や終了処理を省略する。 また counter-vanilla を元にした以下のプログラムの動きを追う。 // counter.js ////////////////////////////////////////////////////////////////////////// // Reduce