>Recursive descent parser == LL(0)
My references mention only that RD parsers are used with "extended-tree
grammars," which are then defined. Perhaps I'm using the worng
references, or have missed something, but I never noticed that RD ==
LL(0).

>LR(1) is LESS restrictive.
No argument there.

>You can still use a grammar with yacc that has some conflicts as it>has some simple rules for conflict resolution. Some of these>recursive descent parser generators that you mention probably use>similar rules for conflict resolution but don't bother to tell you>about their use.

Actually, doesn't yacc and its ilk use LALR? LALR can introduce
conflicts that aren't in LR. As for conflict resolution methods, I'm
sure that they all do similar things.

>Look up some of the compiler theory ... it helps when you're trying to>design the grammar.

It would also help if the language designers would make life a little
easier... As for the theory, I do look it up. RD parsers weren't even
mentioned in compiler class, except by me. I was told we weren't going
to look at RD parsers. LL was defined, but not explored like LR and
LALR were.