Plätzchen sind ein wichtiger Teil von Weihnachten. Deswegen gibt es auch am Nordpol eine ganze Abteilung, welche für das Backen und Verpacken der Plätzchen zuständig ist. Einer der Wichtel, Egon, ist als Küchenchef (Englisch chef) für die Leitung der Plätzchenbäckerei zuständig.
Santa ist schon seit jeher ein Freund der Automatisierung und hat sich für viel Geld eine spezielle Lösung für die Verwaltung der Plätzchenrezepte eingekauft. Diese werden dann automatisch in die Produktionsstraße geladen.
Heute lädt Egon das folgende Plätzchenrezept ein:
Christmas Cookies.
Ingredients.
90 g unsalted butter
15 g lemon juice
101 g granulated sugar
5 chocolate chunks
3 egg whites
7 g vanilla extract
11 g salt
9 cups flour
Method.
Put lemon juice into the mixing bowl.
Add unsalted butter.
Put granulated sugar into the mixing bowl.
Put vanilla extract into the mixing bowl.
Add unsalted butter.
Beat the egg whites.
Put salt into mixing bowl.
Add unsalted butter.
Lookat the egg whites until beated.
Put flour into mixing bowl.
Combine salt.
Put chocolate chunks into the mixing bowl.
Add unsalted butter.
Stir the mixing bowl for 3 minutes.
Liquefy contents of the mixing bowl.
Pour contents of the mixing bowl into the baking dish.
Serves 1.
Nachdem er die Produktionsstraße gestartet hat, kommen nicht wie gewünscht
cookies aus der Maschine, sondern cee_eaei.
„Das Rezept muss einen Fehler enthalten“, jammert Egon. Die Weihnachtselfen sind sauer, denn sie warten darauf, die cookies zu verpacken. Irgendwas scheint an dem Rezept nicht zu stimmen...
Welche drei Fehler stecken in dem Rezept?
Mit folgenden Änderungen bekommt man leckere cookies:
Chef ist eine Stack-basierte esoterische Programmiersprache, dessen Code wie ein Rezept aussieht. Die Zutaten sind Konstanten, deren Werte als ASCII-Codes interpretiert werden. Diese werden nacheinander auf dem Stack (mixing bowl) abgelegt (Put) und dort verarbeitet (Add, Combine, ...). Abschließend wird der Inhalt des Stacks als Zeichenfolge ausgegben (Serves). Durch die Änderung der Menge von unsalted butter landen die Buchstaben im richtigen ASCII-Code-Bereich. Durch die 2 statt 3 egg whites wird mit der Schleife Lookat the egg whites until beated. ein Buchstabe weniger hinzugefügt. Das längerere Rühren verschiebt den Buchstaben i (ASCII Code 105 = chocolate chunks + unsalted butter) um eine Position weiter.