LLとか言われても「再帰下降」、LALRとか言われても「表引くやつ」と言い直さないとぴんと来ないのでまとめる。 あるごりずむ LL……トップダウン LL(1)……JavaCC他、手書きできる LL(k)……ANTLR他、手書きできる 再帰下降+バックトラック……Parsec*1他(たぶんREBOLもあとNFA正規表現もここ)、手書きできる Packrat parsing……バックトラックしてると遅いのでメモ化を併用、Pappy他、PEG(Parsing Expression Grammar)を取るパーサジェネレータはたぶんこれ吐いてくれる LR……ボトムアップ LR(0)……lookahead-setもfollow-setも使わない。ひたすら積んでいってパターン満たしたらreduce。 SLR……follow-setを使う。噂によると手書きできるらしい? LALR……lookahead-s
![caperが吐いたコードを読む - 晴 - Note](https://cdn-ak-scissors.b.st-hatena.com/image/square/06a15c64ba0ceec233d86d71001ebb29a9dcbf5d/height=288;version=1;width=512/https%3A%2F%2Fcdn.blog.st-hatena.com%2Fimages%2Ftheme%2Fog-image-1500.png)