A systematic search is used to explore the space of possible parses of the input string, and a data structure called a "chart" is used to eliminate backtracking and prevent a combinatorial explosion.
Types of Chart Parsers
Chart parsers can also be used for parsing computer languages. Earley parsers in particular have been used in compiler compilers such as the Accent programming language where their ability to parse using arbitrary Context-free grammars eases the task of writing the grammar for a particular language. However their lower efficiency has led to people avoiding them for most compiler work.
See also: