Karelをベースにした、子供向けの簡単なプログラミング言語に取り組んでいます。プログラムフローを制御するために、私は現在これらの機能を(擬似コードで)提供しています:
- パラメータなしの手順の定義
- [ない]表現ステートメントの場合
- 一方[ない]表現ステートメント
手続きから戻る手段がなく、声明も出さない。else
例として、次のコードを取り上げます。
if something
statement1
if not something
statement2
コードの実行はに流れ、 trueの場合if
に実行されます。次に、 trueでないかどうかをテストし(ただし、プログラムの状態が変更されました!)、を実行します。これにより、両方のテストが成功する可能性があります。statement1
something
something
statement2
これはプログラマーを制限しますか?これまでのところ、if
... if not
...を使用するか、if not
最初にを使用してから、を使用するだけで、すべての例の問題を解決することができましたif
。
だから、私の質問は:
ステートメントを追加する必要がありますか?else
キーワードが増えると、言語が少し複雑になります。より複雑ではありますが、ステートメントを使用して解決できるすべての問題は、else
ステートメントがなくても解決できますか?
それとも、ステートメントを省略すると、else
実際に言語がより複雑で直感に反するものになりますか?