Coco/R is a compiler generator, that takes an attribute grammar of a source language and generates a scanner, parser and a semantic evaluator for this language. The scanner works as a deterministic finite automaton. The parser is recursive descent. LL(1) conflicts can be resolved by a multi-symbol lookahead or by semantic checks.
Inherited and synthesized attributes are allowed; however evaluation is done in a top-down, left to right, tree traversal, during parsing.
Thus the class of accepted grammars is LL(k) for an arbitrary k.
There are versions of Coco/R for Java, C#, C++, Delphi, Modula-2, Oberon and other languages.