Инженер-программист не только пишет код, но и языки программирования являются их основным рабочим инструментом.

Это подводит нас к вопросу, который не многие задают себе, откуда появились языки программирования?

Языки программирования в основном состоят из трех частей: лексического анализатора, анализатора и вычислителя.

Давайте углубимся в эти три основные части.

Лексер

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

Это также практичный способ сделать что-то, потому что он дает нам тип каждого токена - если это числа, строки или символы - и может распознавать зарезервированные слова и отбрасывать пробелы.

Выходные данные лексера - это входные данные парсера. Оба разделены, чтобы упростить работу парсера.

Парсер

Теперь, когда у нас есть токены, нам нужно объединить их в диаграмму или дерево.

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

Оценщик

Вот где оживает код. Оценщик дает проанализированному и проанализированному коду окончательное поведение, которое вы видите на экране.

Как так хорошо объясняет Энди Валаам в своей статье: «Оценщик начинает с листьев синтаксического дерева и вычисляет значения листьев, затем объединяет листья и ветви, пока не получит одно значение. По пути это могло вызвать некоторые побочные эффекты, такие как распечатка чего-либо ».

Для более подробного объяснения написания языка программирования вы можете посмотреть видео Энди Валаама на Youtube на:
The Lexer
» The Parser
The Evaluator

Или прочтите его статьи на тему:
The Lexer
The Parser
The Evaluator