
udemy
Udemy - одна из самых больших площадок в мире по доставке обучающего контента от разных авторов всего мира. Присутсвуют курсы практически на любую тему.
Парсинг или синтаксический анализ — это один из самых первых этапов в проектировании и реализации компилятора. Хорошо продуманный синтаксис вашего языка программирования значительно повышает возможность выбора его пользователями.
Одна из главных проблем с «теорией синтаксических анализаторов», которую преподносят в классических курсах и книгах по компиляторам, заключается в том, что она зачастую представляется как «слишком продвинутая». Часто курс быстро переходят к сложным формальным описаниям теории вычислений и грамматик, что может отбить у студентов интерес на начальных этапах.
Другая противоположная проблема — это поверхностный подход, который освещает только ручной (обычно рекурсивный спуск) синтаксический анализ. Это приводит к трудностям в понимании реальных методов автоматизированных синтаксических анализаторов.
Я убежден, что глубокое погружение в теорию синтаксического анализа должно сочетаться с практическим подходом, позволяющим увидеть теоретический материал в реальной практике. В этом курсе мы изучаем разнообразные аспекты теории синтаксического анализа, концентрируясь на парсерах LL и LR.
Чтобы сделать процесс более интересным и удобным для понимания, мы будем создавать автоматический анализатор для комплексного языка программирования, аналогичного JavaScript или Python, с нуля. В результате курса вы сможете не только использовать генераторы парсеров, но и поймете их внутреннюю работу.
Этот курс предназначен для любого любопытного инженера, стремящегося освоить навыки создания сложных систем, таких как синтаксические анализаторы языков программирования. Если вас особенно интересуют компиляторы, интерпретаторы или инструменты преобразования исходного кода, данный курс будет вам полезен. Единственное предварительное условие для участия — знание базовых структур данных и алгоритмов: деревья, списки, обходы.
Мы создаем язык, похожий на JavaScript или Python, и используем JavaScript благодаря его многопарадигмальной структуре, сочетающей функциональное программирование с объектно-ориентированным подходом. JavaScript известен многим инженерам, что облегчает начало работы. Для создания автоматического парсера мы используем инструмент Syntax, поддерживающий плагины для разных языков, таких как Python, Ruby, C#, PHP, Java и Rust. Это позволяет легко адаптировать парсер к вашему предпочтению.
Примечание: Мы стремимся, чтобы наши ученики не просто следовали готовому решению, а действительно понимали и реализовывали каждую деталь парсера. Полный исходный код языка доступен в видеолекциях, иллюстрирующих структуру отдельных модулей.

Udemy - одна из самых больших площадок в мире по доставке обучающего контента от разных авторов всего мира. Присутсвуют курсы практически на любую тему.

Дмитрий Сошников - инженер-программист, читает лекции по различным темам информатики. Он увлечен образованием и уделяет особое внимание высококачественному образовательному контенту: кратким и понятным анимированным лекциям с заметками в реальном времени.
Can you please add it https://www.dmitrysoshnikov.education/p/virtual-machine