Я работаю над простым языком программирования для детей, основанным на Karel. Для управления потоком программы, я в настоящее время предоставляют эти средства (в псевдокоде):Язык программирования без ключевого слова ELSE - это сложнее?
- задающие процедуры без параметров
- если [не] СЛОВА О
- пока [не] СЛОВА О
Я надеваю У меня есть какие-либо средства для возврата из процедуры, и Я не предоставляю заявление else
.
Возьмем следующий код для примера:
if something
statement1
if not something
statement2
Выполнение кода потоков в if
, выполнение statement1
если something
верно; , тогда тестирование, если something
не соответствует действительности (, но состояние программы изменилось!), затем выполняется statement2
. Это может привести к успеху обоих тестов.
Означает ли это ограничение для программиста? До сих пор я смог решить все мои проблемы с примерами, просто используя if
... if not
... или используя if not
сначала, а затем if
.
Итак, мой вопрос: Подходит ли сообщение else
? Это сделало бы язык немного сложнее, имея больше ключевых слов. Все ли проблемы, которые были бы разрешимы с заявлением else
, разрешались и без него, хотя и более сложные?
Или опускает заявление else
, фактически делая язык более сложным и контр-интуитивным?
Ну, это, конечно, кажется, что это усложняет ситуацию; Чтобы написать выше, вы должны взять на себя труд в том, чтобы написать «что-то» дважды (или установить переменную, равную «чем-то» раньше.) Если у вас было два условия, вам пришлось бы написать их оба снова в не-' ', чтобы получить такое же поведение и т. д. По крайней мере, ваши дети получат право применять законы Де Моргана! – mquander