Wat is Chefkok?
Chefkok is een esoterische programmeertaal die in 2002 werd ontwikkeld door David Morgan-Mar.
e GC Wizard kan bestaande chef-programma’s begrijpen en uitvoeren of nieuwe chef-programma’s maken. Chef-programma’s kunnen in het Duits of Engels worden geschreven.
Lees meer over Chefkok op dangermouse.net (en)
De structuur van Chefkok
Een programma bestaat uit de volgende secties, gescheiden door lege regels:
- Receptnaam: Een tekst naar keuze voor een korte beschrijving van het recept.
- Opmerking: Een korte beschrijving van het recept.
- Ingrediënten: De lijst met ingrediënten begint in de eerste regel met het woord Ingrediënten. De ingrediënten worden als volgt opgeschreven: hoeveelheid, eenheid, ingrediënt.
Het volgende geldt: - Hoeveelheid: is een geheel getal.
- Eenheid: bepaalt of de ingrediënten vloeibaar, vast of niet-specifiek zijn. Vaste ingrediënten worden als getallen behandeld in de uitvoer, vloeibare ingrediënten als karakters. De volgende eenheden zijn beschikbaar:
- g, kg, snufje(s) voor vaste ingrediënten
- ml, l, scheutje(s) voor vloeibare ingrediënten
- theelepel, eetlepel, kopje(s) voor niet-specifieke ingrediënten. Deze ingrediënten kunnen als opgehoopt of afgevlakt worden aangegeven.
- Ingrediënt: is een variabele naam die willekeurig gekozen kan worden, maar altijd op dezelfde manier geschreven moet worden (d.w.z. altijd in enkelvoud of meervoud).
- Kooktijd: De kooktijd is niet verplicht en hierdoor lijkt het recept echter. Kooktijd: tijd minuut/minuten | uur/uren.
- Voorverwarmen: Het aangeven van voorverwarmen is niet verplicht en hierdoor lijkt het recept echter. Voorverwarm de oven op temperatuur graden Celsius (gas schaal stand).
- Porties: Het laatste gedeelte geeft aan hoeveel serveerschalen er moeten worden uitgedeeld. Porties: aantal porties.
- Bijgerecht recepten: Bijgerecht recepten zijn kleine recepten die na het hoofdrecept komen. Bijgerecht recepten worden gemaakt door sous-chefs. Zij hebben hun eigen kommen en serveerschalen. Deze kommen en serveerschalen zijn hetzelfde als die van de chef-kok. Als het bijgerecht recept klaar is, wordt de inhoud van de eerste kom in de kom van de chef gedaan. Een bijgerecht recept kan dezelfde ingrediënten hebben als het hoofdrecept.
De namen van variabelen kunnen eigenlijk vrij worden gekozen, maar meestal krijgen ze namen van typische kookingrediënten. Waarden van droge ingrediënten worden getoond als getallen en waarden van vloeibare ingrediënten als letters. De variabelen of ingrediënten worden verwerkt in mengkommen of een ovenschaal. Kommen en serveerschalen werken als stapels, wat betekent dat het bovenste element kan worden verwerkt.
Methode
De lijst met instructies voor de bereiding begint in de eerste regel met het woord Methode: De volgende regels geven de losse instructies: methode. De losse instructies worden gescheiden door een punt.
Instructies DE | Instructies EN | Omschrijving |
---|---|---|
ingredient aus dem Kühlschrank nehmen. | Take ingredient from refrigerator. | Leest een numerieke waarde in en overschrijft de bestaande waarde van het ingrediënt. |
ingredient in die [n-th] Schüssel geben. | Putingredient [into [n-th] mixing bowl]. | Zet de inhoud van de variabele ingrediënt in de[n-th] kom. |
ingredient in die [n-th] Schüssel unterheben. | Fold ingredient [into [n-th] mixing bowl]. | Neemt de bovenste waarde van de[n-th] stapel en schrijft het in de variabele zutat. |
ingredient in die [n-th] Schüssel dazugeben. | Add ingredient [into [n-th] mixing bowl]. | Voegt de waarde van de variabele zutat toe aan de bovenste waarde van de[n-th] stapel en slaat het resultaat op in de[n-th] stapel. |
ingredient aus der [n-th] Schüssel abschöpfen. | Remove ingredient [into [n-th] mixing bowl]. | Trekt de waarde van de variabele zutat af van de bovenste waarde van de[n-th] stapel en slaat het resultaat op in de[n-th] stapel. |
ingredient mit der [n-te] Schüssel kombinieren. | Combine ingredient [into [n-th] mixing bowl]. | Vermenigvuldigt de waarde van de variabele zutat met de bovenste waarde van de[n-th] stapel en slaat het resultaat op in de[n-th] stapel. |
ingredient mit der [n-th] Schüssel teilen. | Divide ingredient [into [n-th] mixing bowl]. | Verdeelt de waarde van de variabele ingrediënt door de bovenste waarde van de[n-th] stapel en slaat het resultaat op in de[n-th] stapel. |
Alle festen Zutaten zu der [n-th] Schüssel hinzugeben. | Add dry ingredients to [n-th] mixing bowl. | Voegt de waarden van alle droge ingrediënten samen en slaat het resultaat op in de[n-th] stapel. |
Inhalte der [n-th] Schüssel auf dem Stövchen erhitzen. | Liquefy contents of the [n-th] mixing bowl. | Interpreteert alle waarden van de[n-th] stapel als karakters. |
ingredient zerlassen. | Liquefy ingredient. | De waarden van de variabele zutat worden geïnterpreteerd als karakters. |
Inhalt der [n-th] für [n-th] Schüssel gut verrühren. | Mix [the [n-th] mixing bowl] well. | Zet alle waarden van de[n-th] stapel in een willekeurige volgorde. |
ingredient in die [n-th] Schüssel für n Minuten unterrühren | Stir ingredient into the [n-th] mixing bowl. | Draai de waarde van de variabele in de[n-th] stapel omlaag met n posities. |
[n-th] Schüssel für n Minuten umrühren. | Stir the [n-th] mixing bowl for n minute[s]. | Draai alle waarden van de[n-th] stapel omlaag met n posities. |
[n-th] Schüssel abwaschen. | Clean [n-th] mixing bowl. | Wis de[n-th] stapel. |
Inhalt der [n-th] Schüssel auf die [n-th] Servierplatte stürzen. | Pour contents oft the [n-th] mixing bowl into the [n-th] baking dish. | Bereid alle inhoud van de[n-th] stapel voor om te serveren. |
zutat behandeln. | treat the ingredient. | Begin van een lus. Het einde van de lus wordt gemarkeerd met de instructie Behandel tot zutat klaar is voor verdere verwerking. Als de variabele zutat de waarde 0 heeft, wordt de lus beëindigd. |
Solange behandeln bis ingredient zur Weiterarbeitung bereit. | teat [the ingredient] until treated. | Einde van een lus. Het begin van de lus wordt gemarkeerd met de verklaring behandel zutat. Als de variabele zutat de waarde 0 heeft, wordt de lus beëindigd. |
Zur Seite stellen. | Set aside. | Eindigt onmiddellijk de binnenste lus. |
Einfrieren [für n Stunde[n]]. | Refrigerate [for n hour[s]]. | Eindigt onmiddellijk het programma. Als een tijdsperiode is gespecificeerd, worden de inhoud van de eerste n serveerschalen uitgegeven. In een sub-programma wordt dit beëindigd en de inhoud van het eerste gerecht wordt teruggegeven. |
Serviere mit beilagenrezept. | Serve with side dish recipe. | Roept het sub-programma bijgerecht recept aan. |
Veelvoorkomende fouten
Bij het schrijven van een Chefkok-programma komen de volgende fouten vaak voor:
- Geen aanduiding van een titel
- Ontbrekende lege regels tussen secties
- Ingrediënten zijn niet op dezelfde manier geschreven
- Vergeten ingrediënten te “smelten” bij het weergeven van karakters
De functie Chefkok
Bovenaan het scherm staat een schuifknop waarmee je de taal van het recept kunt aangeven. Je hebt de keuze tussen Duits en Engels.
Daaronder staat een schuifknop waarmee je kunt kiezen of je de Vertaler of de Generator wilt gebruiken.
Vertaler
Als je ‘vertaler’ kiest verschijnt er een tekstveld waar je het recept kunt invoeren. Waar nodig kun je onder Koelkast de ingrediënten invoeren.
Onder Uitvoer komt de tekst te staan dat GC Wizard ontvangt als resultaat na uitvoering van het programma.
Generator
Als je ‘generator’ kiest verschijnen er 5 tekstvelden en een schuifknop.
In het eerste tekstveld, Uitvoer, zet je de tekst, die als resultaat moet worden getoond na uitvoering van het programma.
In het tekstveld daaronder zet je de titel van het recept.
In het Opties gedeelte staan drie tekstvelden, waarmee je het recept echter kunt laten lijken. Je kunt deze tekstvelden ook leeg laten.
- Opmerking
- Bereidingstijd
- Over Temperatuur
Met de schuifknop kun je aangeven of je aanvullende recepten wilt gebruiken.
In het gedeelte Programma/Broncode zal GC Wizard de Chefkok code plaatsen waarmee je na uitvoeren de ingevoerde tekst krijgt.