1 Общая модель компилятора. Блоки компилятора и их функции
2 Общее понятие синтаксиса и семантики языка. БНФ и др. Методы описания синтаксиса и семантики языка.
3 Понятие языка. Способы задания языка. Операции над языком
4 Регулярные выражения. Способы задания регулярных выражений. Операции над регулярными выражениями.
5.Конечные автоматы. Способы задания. Методы построения конечных автоматов. Преобразование конечных автоматов.
6 Лексический анализ. Методы и средства построения лексического анализатора.
7 Распознавание цепочек символов с помощью конечных автоматов.
8 Распознавание цепочек символов с помощью автоматов с магазинной памятью.
9 Грамматики языков. Классификация языков по Хомскому.
10 Контекстно-свободные грамматики. Преобразование КС-грамматик.
11 Методы представления грамматики в памяти.
12 Нисходящий синтаксический анализ. Метод рекурсивного разбора.
14 Нисходящий синтаксический анализ. Методы восстановления после ошибок.
15 Восходящий синтаксический анализ. Понятие основы.
16 Синтаксический анализ приоритета операторов. Функция приоритета
17 LR-анализаторы. LR-грамматики. Методы восстановления после ошибок.
18 SLR-анализаторы. Построение таблиц для SLR-анализатора.
19 Методы анализа ошибок. Восстановление после ошибок.
20 Семантика языка, методы описания и анализа.
21 Понятие атрибутивные грамматики
22 Синтаксически управляемая трансляция.
23 Таблица символов, таблица меток и др. Методы построения, доступа и анализа.
24 Генерация промежуточного кода.
25 Методы оптимизация промежуточного кода.
26 Программные средства генерации лексического анализатора.
27 Программные средства генерации синтаксического анализатора.
28 Критерии оценки языков программирования.
29 Имена, связывание, проверка типов.
30 Область видимости имен. Способы реализации.
31 Типы данных. Способы реализации.
32 Выражения и операторы присваивания. Способы реализации.
33.Структуры управления на уровне операторов. Способы реализации.
34. 35 Подпрограммы. Способы реализации.
36. Абстрактные типы данных. Способы реализации.
37 Объектно-ориентированные языки программирования. Способы реализации.
38 Обработка исключительных ситуаций. Способы реализации.
39 Языки параллельного программирования. Способы реализации.
40 Императивные языки программирования. Способы реализации.
41 Функциональные языки программирования. Способы реализации.
42 Языки логического программирования. Способы реализации.
43 Графовые грамматики. Назначение и основные понятия.
44 ANTLR. Tree grammars.
45 Языковые процессоры. Назначение и структура
46 CASE-средства. Назначение, классификация и основные понятия.
47 CASE-средства. Направления интеллектуализации.