Чаще всего в императивном языке общего назначения точки с запятой в качестве разделителей операторов либо обязательны, либо полностью запрещены (например, C и Python).
Однако некоторые языки, такие как JavaScript, позволяют отказаться от разделения ваших операторов точкой с запятой в пользу других разделителей (например, новой строки).
Какие дизайнерские решения стоят за этим? Я понимаю, что точки с запятой необходимы при написании нескольких операторов в одной строке, но есть ли еще одна причина сделать их обязательными (за исключением следующего C)?
I understand that semicolons are essential when writing multiple statements on the same line- Зависит от языка. Мой любимый не имеет таких разделителей вообще, следующий оператор начинается, когда все аргументы функции были использованы.
}или в конце файла).