はじめに Algebraic Effects (and Handlers)は大雑把に言うと「もとの場所に戻れる例外」で、戻らなくても良いし、また戻った後に何か動作させることもできるし、(multi-shotであれば)複数回もとの場所に戻ることもできます。 例の如くDan Abramov氏の記事 の記法を使うと // (1回)戻る場合 try { makeFriends(arya, gendry); } handle (effect) { if (effect === 'ask_name') { resume with 'Arya Stark'; } } // 戻らない、つまり普通の例外と同じ try { makeFriends(arya, gendry); } handle (effect) { if (effect === 'ask_name') { console.error('ERR