A parser which will recognize a context-free grammar from a text file, accept input from the user, and produce output matching the grammar.