Почему точки с запятой делают Go быстрее

Я читаю Learning Go Джона Боднера, и он говорит:

«Правило вставки точки с запятой — это одна из вещей, которая делает компилятор Go проще и быстрее, и в то же время обеспечивает соблюдение стиля кодирования. Это умно».

синтаксический анализатор go работает быстрее, чем синтаксические анализаторы C и C++, только потому, что правило синтаксического анализа проще. К точкам с запятой это не имеет никакого отношения. Javascript также автоматически вставляет точки с запятой, и никто не говорит, что он анализируется быстрее.

phuclv 09.10.2022 08:03
Создание API ввода вопросов на разных языках программирования (Python, PHP, Go и Node.js)
Создание API ввода вопросов на разных языках программирования (Python, PHP, Go и Node.js)
API ввода вопросов - это полезный инструмент для интеграции моделей машинного обучения, таких как ChatGPT, в приложения, требующие обработки...
2
1
66
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Согласно точкам с запятой в Go

Хотите верьте, хотите нет, но это отменяет правила. Роберт играл с это в парсере и спецификации языка и был удивлен насколько все стало проще. Я делаю то же преобразование в компиляторе 6g прямо сейчас, и мертвый код я режу Away — одна из самых уродливых частей компилятора. Идентификатор забыл написать это, но, мальчик, это уродливо. И скоро это будет уйти.

Правило вставки точки с запятой может упростить синтаксический анализатор. Однако компиляторы могли вставлять точки с запятой, и нет никаких доказательств того, что компилятор может работать быстрее.


Еще одно мнение от Line Break Rules in Go

есть как похвалы, так и критика правил вставки точки с запятой. Некоторым программистам не нравятся правила, поскольку они думают, что правила ограничивают свободу стилей кода. Хвалители думают, что правила ускоряют компиляцию кода и делают код, написанный разными программистами, похожим, чтобы было легче понять код, написанный друг другом.

Другие вопросы по теме