Andrey Stolyarov

Андрей Викторович Столяров: сайт автора

Экзамен по курсу "Введение в парадигмы программирования"

Внимание!

Экзамен для тех, кто по какой-либо причине не получил свою оценку 10 декабря, состоится 27 января (среда) в 16:00. Сбор у ауд. 747.

Список экзаменационных вопросов

  1. История термина "парадигма" в применении к программированию. Томас Кун. Роберт Флойд.
  2. Экстенсиональные определения парадигмы программирования (примеры парадигм) и варианты интенсиональных определений.
  3. Парадигмы программирования и языки программирования. Уровни поддержки парадигмы в языке.
  4. Рекурсия как парадигма программирования. Примеры.
  5. Виды рекурсии.
  6. Остаточная (хвостовая) рекурсия и её оптимизация.
  7. Язык Лисп: S-выражения.
  8. Язык Лисп: вычислительная модель и основные спецформы.
  9. Язык Лисп: функция как объект данных и функции высших порядков.
  10. Язык Лисп: фунарг-проблема, лексическое и динамическое связывание, замыкания.
  11. Редуцирование списков.
  12. Основные видимые отличия языка Scheme от языка Лисп.
  13. Продолжения (континуации) языка Scheme как обобщение нелокальных выходов и обработки исключений.
  14. Техника рекурсии с накапливающим параметром и её достоинства в сочетании с оптимизацией хвостовой рекурсии.
  15. Язык Пролог: структуры данных. Сходство и различия между структурами данных Пролога и S-выражениями.
  16. Язык Пролог: переменные, унификация выражений, контексты
  17. Язык Пролог: основы вычислительной модели, предикаты, факты; имитация функций, возвращающих значения, с помощью предикатов большей арности.
  18. Язык Пролог: гипотеза о замкнутости мира и её последствия.
  19. Язык Пролог: процедурная семантика, отсечения, причины зависимости программы от порядка целей.
  20. Язык Пролог: арифметика.
  21. Язык Пролог: функционирование предикатов в различных прототипах и факторы, мешающие такому функционированию.
  22. Язык Рефал: структуры данных, сравнение их с S-выражениями.
  23. Язык Рефал: переменные, сопоставление, синтез нового выражения.
  24. Язык Рефал: функции, вызов функций. Цикл работы Рефал-машины.
  25. Расширенный Рефал (условные выражения в предложениях).
  26. Лямбда-исчисление: синтаксис; БНФ лямбда-выражения.
  27. Лямбда-исчисление: редукция, редексы, виды редукции.
  28. Лямбда-исчисление: нормальный и аппликативный порядок редукции, следствие из теоремы Чёрча-Россера и теорема стандартизации.
  29. Рекурсия в лямбда-исчислении и Y-комбинатор.
  30. Ленивые вычисления: общие принципы; причины выигрыша и потери в эффективности.
  31. Ленивые вычисления и бесконечные структуры данных.
  32. Императивное программирование: основные определяющие факторы, понятие состояния программы.
  33. Программирование в терминах явных состояний (автоматное программирование), его сходства и различия с императивным программированием.
  34. Событийно-ориентированное программирование.
  35. Объектно-ориентированное программирование: объекты и сообщения.
  36. Объектно-ориентированное программирование: теоретико-множественное введение понятия класса.
  37. Две терминологические традиции ООП и их синонимия.
  38. Командно-скриптовые языки программирования и их основные особенности.
  39. ASCII-текст как парадигма.

пояснение


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

Если вы искали сайт замечательного писателя-фантаста Андрея Михайловича Столярова, то вам, к сожалению, не сюда.

Андрей Михайлович Столяров в библиотеке Мошкова

Авторские права © Андрей Викт. Столяров, 2009 — 2024