User Tools

Site Tools


gram:materials

This is an old revision of the document!


Материалы курса (gram:materials)

Лекции

Номер Тема Материалы Дополнительно
Лекция 1 Введение в формальные языки. Иерархия Хомского. Регулярные языки и конечные автоматы. Регулярные языки и конечные автоматы. ДКА/НКА: преобразования и минимизация. lec-1.pdf
| **Лекция 2** | Регулярные языки и конечные автоматы | {{:gram:mat:lec-2.pdf|}} | [[gram:lec-2-slides|Слайды]] |
| **Лекция 3** | ДКА/НКА: преобразования и минимизация | {{:gram:mat:lec-3.pdf|}} | [[gram:lec-3-slides|Слайды]] |
| **Лекция 4** | Контекстно-свободные грамматики | {{:gram:mat:lec-4.pdf|}} | [[gram:lec-4-slides|Слайды]] |
| **Лекция 5** | Автоматы с магазинной памятью | {{:gram:mat:lec-5.pdf|}} | [[gram:lec-5-slides|Слайды]] |
| **Лекция 6** | Синтаксический анализ: LL(1) | {{:gram:mat:lec-6.pdf|}} | [[gram:lec-6-slides|Слайды]] |
| **Лекция 7** | Синтаксический анализ: LR(1) | {{:gram:mat:lec-7.pdf|}} | [[gram:lec-7-slides|Слайды]] |
| **Лекция 8** | Генерация кода с LLVM | {{:gram:mat:lec-8.pdf|}} | [[gram:lec-8-slides|Слайды]] |

Лабораторные работы

Номер Тема Задание Шаблоны Примеры
ЛР1 Лексический анализ lab-1-task.pdf lab-1-template.zip lab-1-example.zip
ЛР2 Синтаксический анализ lab-2-task.pdf lab-2-template.zip lab-2-example.zip
ЛР3 Семантический анализ lab-3-task.pdf lab-3-template.zip lab-3-example.zip
ЛР4 Генерация кода lab-4-task.pdf lab-4-template.zip lab-4-example.zip

Практические занятия

Номер Тема Задачи Решения
ПЗ1 Регулярные выражения и автоматы prac-1-tasks.pdf prac-1-solutions.pdf
ПЗ2 КС-грамматики и парсеры prac-2-tasks.pdf prac-2-solutions.pdf
ПЗ3 Синтаксические анализаторы prac-3-tasks.pdf prac-3-solutions.pdf
ПЗ4 Генерация LLVM IR prac-4-tasks.pdf prac-4-solutions.pdf

Инструменты и документация

Примеры проектов

Уровень Проект Описание Исходный код
Начальный Калькулятор выражений Арифметические выражения с переменными example-calculator.zip
Средний Мини-язык запросов SQL-подобный язык для фильтрации данных example-querylang.zip
Продвинутый Декларативный конфигуратор Язык для описания конфигураций систем example-configlang.zip
Экспертный Полноценный компилятор Статически типизированный язык программирования example-minilang.zip

Полезные ресурсы

  1. Книги и учебники
    1. “The Definitive ANTLR 4 Reference” - Terence Parr
    2. “Compilers: Principles, Techniques, and Tools” - Aho, Ullman et al.
    3. “Engineering a Compiler” - Cooper, Torczon
  1. Онлайн-курсы
  1. Сообщества

График обновлений

Последнее обновление: 14.11.2025

  1. Добавлены материалы Лекции 1
  2. Обновлены задания для ЛР1
  3. Добавлены примеры проектов
  4. Загружена документация по ANTLR4

Планируемые обновления:

  1. 21.11.2025: Материалы Лекций 2-3
  2. 28.11.2025: Примеры решения практических задач
  3. 05.12.2025: Видеозаписи лекций

← Назад на главную | Описание курса | Лабораторные работы

gram/materials.1763095082.txt.gz · Last modified: by eugeneai