Earley's Algorithm

The first published algorithm to bring the worst-case asymptotic time
complexity of recognition for unrestricted
Context-free Grammars down to
cubic order in the number of words in the string to be
parsed. Makes use of a well-formed substring
table. See Caching.