Übersetzung in Bonsai-Assembler
Das Übersetzungsproblem
Mit MiniPython haben wir jetzt eine - wenn auch recht einfache - Hochsprache mit typischen Anweisungen wie Rechenoperationen mit Variablen, sowie typischen Kontrollstrukturen wie Alternativen und Schleifen. MiniPython ähnelt damit Standard-Python viel mehr als zum Beispiel der Programmiersprache des Bonsai-Rechners, die wir Bonsai-Assembler nennen wollen.
Ziel dieses Abschnitts ist es, zu einem (syntaktisch korrekten) Programm aus der Programmiersprache MiniPython ein entsprechendes Bonsai-Assemblerprogramm zu erzeugen.
Eine wichtige Frage ist, ob die Übersetzung von der einen in die andere Programmiersprache ein kreativer Prozess ist, der menschliche Intelligenz erfordert, oder ob man die Übersetzung durch strenges Abarbeiten von bestimmten Regeln automatisieren kann.
Dass Letzteres tatsächlich der Fall ist, wird in den folgenden Abschnitten gezeigt. Es wird aber auch klar werden, dass die Übersetzung keine besonders einfache Aufgabe ist und dass es sinnvoll ist, das Problem schrittweise in den Griff zu bekommen.