Alex + Happy を使用して、Haskell で言語のパーサーを作成しています。
私がやりたいことは: アレックスでは、空白と改行をスキップしますが、それらを状態として保持し、トークンの前に改行とインデントを含むトークンを発行します。
インデントと改行に余分なトークンを発行し、後でそれらを折りたたむこともできると思いますが、よりクリーンなアプローチを好みます。
インデント/改行情報を保持し、トークンを発行するアクション内でアクセス可能なモナドで alex のトークン処理をラップする方法はありますか?