前書いた Coalton の JSON パーサをリファクタしているのだけど、LL(1) のパーサで安全に Alternative を使って分岐する方法が分かった。すばらしいリファクタだわ。Alternative を使うことで簡潔になっただけでなく、分岐を手書きする場合と比較して、分岐処理中に read しないことも保証できるから安全性も増している。本当に型は素晴らしい。もうやめられんわこれ。
https://github.com/tojoqk/json/commit/4c464f12324014a3541f5263fea4e66d59e8942d