Программирование Алгоритмы парсинга Теория и практика синтаксического анализа - Сошников (2020)

  • Автор темы VkurseAngel
  • Дата начала
VkurseAngel

VkurseAngel

Старожил
Команда форума
Премиум
14 Фев 2023
27,237
37,030
121
#1
Алгоритмы парсинга Теория и практика синтаксического анализа
Parsing Algorithms
Дмитрий Сошников udemy

Изображение Алгоритмы парсинга Теория и практика синтаксического анализа - Сошников (2020)


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

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

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

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

В этом курсе мы углубляемся в различные аспекты теории синтаксического анализа, подробно описывая парсеры LL и LR. Однако в то же время, чтобы сделать процесс обучения и понимания простым и увлекательным, мы параллельно создаем автоматический анализатор для полного языка программирования, подобного JavaScript или Python, с нуля.

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

Реализация парсера для языка программирования также сделает ваше практическое использование других языков программирования более профессиональным.

Для кого предназначен этот Курс?

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

Если вас особенно интересуют компиляторы, интерпретаторы и инструменты преобразования исходного кода, то этот курс также для вас.

Единственное предварительное условие для этого курса - базовые структуры данных и алгоритмы: деревья, списки, обход.

Что используется для реализации?

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

Многие инженеры знакомы с JavaScript, поэтому сразу приступить к программированию будет проще. Для создания автоматического парсера мы используем инструмент Syntax, который является независимым от языка генератором парсеров и поддерживает плагины для Python, Ruby, C #, PHP, Java, Rust и т. д. То есть, реализация этого парсера может быть легко перенесена на любой другой язык по вашему выбору и вкусу.

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

Продажник:

Скачать:
 
Последнее редактирование:

Похожие темы


О нас

Слив платных курсов - скачать бесплатно

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

VKURSE.INFO регулярно публикует:

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

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

Быстрая навигация

Меню пользователя