Lange Zeit hat das Programm nur Eingaben bekommen, in denen Nichtterminalsymbole vorkamen, für die es auch Regeln in der Grammatik gab. Das Programm warf aber KeyErrors, als im Eingabewort plötzlich ” unbekannte„Nichtterminale vorkammen. Übrigens ist es keineswegs gesagt, dass Achers Programm schlechter ist als unseres – es weigert sich eben, eine” unerfüllbare„Aufgabe auszuführen, nämlich ein nur aus Terminalsymbolen bestehendes Wort abzuleiten. Unser Programm hinkt weiter und gibt am Schluss ein Wort aus, in dem noch Nichtterminale stehen.

In realen Anwendungen ist es wichtig, sich Gedanken über das Verhalten des Programms in solchen

” Grenzfällen„zu machen: Fehlermeldung oder Weiterhinken? Es gibt keine allgemeine Regel, was günstiger ist, dies hängt von der Anwendung ab. Allerdings sollten Spezifikation und Dokumentation klar sagen, was jeweils passiert.”