Я читаю Learning Go Джона Боднера, и он говорит:
«Правило вставки точки с запятой — это одна из вещей, которая делает компилятор Go проще и быстрее, и в то же время обеспечивает соблюдение стиля кодирования. Это умно».
Согласно точкам с запятой в Go
Хотите верьте, хотите нет, но это отменяет правила. Роберт играл с это в парсере и спецификации языка и был удивлен насколько все стало проще. Я делаю то же преобразование в компиляторе 6g прямо сейчас, и мертвый код я режу Away — одна из самых уродливых частей компилятора. Идентификатор забыл написать это, но, мальчик, это уродливо. И скоро это будет уйти.
Правило вставки точки с запятой может упростить синтаксический анализатор. Однако компиляторы могли вставлять точки с запятой, и нет никаких доказательств того, что компилятор может работать быстрее.
Еще одно мнение от Line Break Rules in Go
есть как похвалы, так и критика правил вставки точки с запятой. Некоторым программистам не нравятся правила, поскольку они думают, что правила ограничивают свободу стилей кода. Хвалители думают, что правила ускоряют компиляцию кода и делают код, написанный разными программистами, похожим, чтобы было легче понять код, написанный друг другом.
синтаксический анализатор go работает быстрее, чем синтаксические анализаторы C и C++, только потому, что правило синтаксического анализа проще. К точкам с запятой это не имеет никакого отношения. Javascript также автоматически вставляет точки с запятой, и никто не говорит, что он анализируется быстрее.