DDP-Projekt / Kompilierer

Der Kompilierer der Deutschen Programmiersprache
https://ddp.le0n.dev/Spielplatz
MIT License
138 stars 4 forks source link

"Wiederhole" als Schlüsselwort anstatt "Mache" für Wiederholungen #11

Closed bafto closed 1 year ago

bafto commented 1 year ago

Momentan sehen Do-While Schleifen so aus:

Mache:
    <Anweisungen>
Solange <Bedingung> ist.

Und Wiederholungen so:

Mache:
    <Anweisungen>
<Anzahl> Mal.

Das sieht mir viel zu ähnlich aus, ich würde es bevorzugen im zweiten fall Wiederhole anstatt Mache zu benutzen. Sobald/Falls wir break und continue haben könnte man das <Anzahl> Mal auch weglassen und so einen endlos Loop schreiben (wie mit Rusts loop).

Außerdem kann es im Moment zu Verwirrung kommen, wenn man in Wenn Verzweigungen mache statt dann benutzt:

Wenn 5 gleich 4 ist, mache:
    Schreibe "hi". // Fehler: Es wurde ein Ausdruck erwartet aber '.' gefunden

Mit Wiederhole wäre dieser Fall klarer und der Fehler würde lauten "Es wurde 'Solange' erwartet aber gefunden", was natürlich keine bessere Fehlermeldung ist, aber das kann man ja noch separat ändern.

NotLe0n commented 1 year ago

wiederhole statt mache ist definitiv klarer wenn man es in einer Verzweigung verwendet.

Dein Vorschlag sind also, diese änderungen? Mache-solange zu:

Wiederhole:
    <Anweisungen>
Solange <Bedingung> ist.

Mache n-Mal zu:

Wiederhole:
    <Anweisungen>
<Anzahl> Mal.

Wollen wir nicht noch andere Instanzen von mache durch wiederhole ersetzen? Wie zum Beispiel:

Solange <Bedingung> ist, wiederhole:
    <Anweisungen>
bafto commented 1 year ago

Nur das Zweite Code-Snippet. In Solange-Schleifen macht es immer noch Sinn, da Do-While ja nur das umdrehen von While ist. Bei Wiederholungen allerdings lohnt es sich diese abzugrenzen.