本記事は、M3 Advent Calendar 2025 14日目の記事です。 はじめまして。エンジニアグループ、コンシューマーチームの松本と申します。 今回は、「継続 - Continuation」の本質を理解し、Promiseやasync/awaitでは解決できない課題を明らかにした上で、それを乗り越えるEffect Systemについて解説します。 「継続 - Continuation」とは? コールバック関数は継続そのもの 継続と非同期処理、副作用 継続の課題:コールバック地獄 継続渡しスタイル(Continuation-Passing Style, CPS) CPSの問題点:継続のネスト 継続の合成:Promise と async/await Promise(継続を合成する) async/await 継続だけでは解決できない課題 課題1: どんなエラーが発生しうるか、型から分から