Google Play badge

синтаксис


СИНТАКСИС

В информатике термин синтаксис компьютерного языка относится к набору правил, которые определяют комбинацию символов, которая считается правильно структурированным фрагментом или документом на этом языке. Это относится как к языкам разметки, где документ представляет данные, так и к языкам программирования, где документ представляет собой исходный код. Синтаксис языка определяет его поверхностную форму. Компьютерные языки, основанные на тексте, основаны на последовательностях символов. С другой стороны, языки визуального программирования основаны на связи между символами (которые могут быть графическими или текстовыми) и пространственным расположением. Считается, что документы, которые оказались синтаксически недействительными, содержат синтаксическую ошибку.

Синтаксис - форма - противопоставляется семантике - значению. При обработке компьютерных языков семантическая обработка обычно происходит после синтаксической обработки. Однако в некоторых случаях семантическая обработка важна для полного синтаксического анализа, и поэтому они выполняются одновременно или вместе. В компиляторе синтаксический анализ включает внешний интерфейс, а семантический анализ включает серверную часть (и среднюю часть в случаях, когда выделяется фаза).

УРОВНИ СИНТАКСИСА

Синтаксис компьютерного языка обычно делится на три разных уровня:

Такое различение создает модульность, позволяющую описывать и обрабатывать каждый уровень отдельно и часто независимо. Он начинается с того, что лексер превращает линейную последовательность символов в линейную последовательность токенов: это называется лексическим анализом или лексированием .

Во-вторых, синтаксический анализатор превращает линейную последовательность токенов в так называемое иерархическое синтаксическое дерево. Это называется синтаксическим анализом .

В-третьих, контекстный анализ разрешает проверки и типы имен. Сам этап синтаксического анализа можно разделить на две части: конкретное синтаксическое дерево или дерево синтаксического анализа, которое определяется грамматикой, но оно слишком подробно для практического использования, и абстрактное синтаксическое дерево (AST), которое упрощает это до формы это можно использовать.

СИНТАКСИС И СЕМАНТИКА

Синтаксис языка описывает действительную форму программы, но не предоставляет никакой информации, касающейся значения программы или результатов ее выполнения. Значение, которое придается комбинации символов, обрабатывается семантикой (жестко запрограммированной или формальной в эталонной реализации). Не все синтаксически правильные программы являются семантически правильными. Тем не менее, большое количество синтаксически правильных программ плохо сформировано в соответствии с правилами языка; и может (в отношении спецификации языка, а также надежности реализации) привести к ошибке при выполнении или переводе. В некоторых случаях такие программы могут показывать неопределенное поведение. Даже в тех случаях, когда программа хорошо определена на языке, она все равно может иметь значение, не предназначенное ее автором.

В примере с естественным языком может оказаться невозможным придать грамматически правильное значение предложению. Например,

Download Primer to continue