Les gens disent souvent que les analyseurs syntaxiques LR (k) sont plus puissants que les analyseurs syntaxiques LL (k) . Ces déclarations sont vagues la plupart du temps; en particulier, devrions-nous comparer les classes pour un fixe ou l'union sur tous les k ? Alors, comment est la situation vraiment? En particulier, je m'intéresse à la place de LL (*).
Autant que je sache, les ensembles respectifs de grammaires que les analyseurs LL et LR acceptent sont orthogonaux. Parlons donc des langues générées par les ensembles respectifs de grammaires. Soit la classe de langages générés par les grammaires qui peuvent être analysés par un analyseur L R ( k ) et similaires pour les autres classes.
Je suis intéressé par les relations suivantes:
Certaines sont probablement faciles; mon objectif est de collecter une comparaison "complète". Les références sont appréciées.