Implementiere einen Evaluator für eine sehr einfache Teilmenge von Forth.
Forth ist eine stapelbasierte Programmiersprache. Implementiere einen sehr einfachen Evaluator für eine kleine Teilmenge von Forth.
Dein Evaluator muss die folgenden Wörter unterstützen:
+, -, *, / (Ganzzahlarithmetik)DUP, DROP, SWAP, OVER (Stapelmanipulation)Dein Evaluator muss außerdem das Definieren neuer Wörter mit der üblichen Syntax unterstützen: : word-name definition ;.
Um es einfach zu halten, ist der einzige Datentyp, den du unterstützen musst, vorzeichenbehaftete Ganzzahlen mit einer Größe von mindestens 16 Bit.
Für die Syntax solltest du die folgenden Regeln verwenden: Eine Zahl ist eine Folge von einer oder mehreren (ASCII-)Ziffern, ein Wort ist eine Folge von einem oder mehreren Buchstaben, Ziffern, Symbolen oder Satzzeichen, die keine Zahl ist. (Forth verwendet wahrscheinlich leicht abweichende Regeln, aber das kommt dem schon sehr nahe.)
Bei Wörtern wird nicht zwischen Groß- und Kleinschreibung unterschieden.
Melde dich bei Exercism an, um Scala mit 95 Übungen und echtem menschlichen Mentoring zu lernen und zu meistern, alles kostenlos.