| Методические рекомендации для студентов по изучению курса «Функциональное программирование»
Методические рекомендации по изучению теоретического материала
Данный курс предусматривает изучение теоретических вопросов, в соответствии с рабочей программой, а также выполнение лабораторных и семестровых работ.
В теоретической части курса изучаются теоретические основы функционального программирования, функциональный подход к программированию на примере языка программирования Лисп; а также рассматривается реализация ряда прикладных задач на Лиспе.
В практической части курса изучаются основы функционального языка программирования Лисп, рекурсивные алгоритмы и реализация их на Лиспе.
По окончании курса студент должен знать основы языка Лисп, уметь реализовывать рекурсивные алгоритмы на Лиспе, а также решать прикладные задачи нечислового программирования, предусмотренные программой курса, на Лиспе.
Для изучения теоретической части курса необходимо изучить вопросы, рассматриваемые в лекциях. При изучении материала необходимо помимо лекционных материалов использовать рекомендуемую литературу для лучшего усвоения материала.
Методические рекомендации по выполнению лабораторных работ
Лабораторная работа 1.
Базовые функции
Цель работы
: научиться работать в интерпретаторе Common Lisp, познакомиться с базовыми предикатами работы со списками.
Для выполнения лабораторной работы необходимо:
1. Изучить учебные материалы, представленные в презентации лабораторного практикума. При изучении материала необходимо повторить все представленные в презентации примеры.
2. Выполнить задания в конце презентации лабораторного практикума.
В результате выполнения лабораторной работы студент должен научиться работать с интерпретатором Common Lisp, научиться работать с базовыми предикатами разбора и построения списков, а также предикатами определения типа аргумента.
На изучение данной темы отводится 2 часа.
Лабораторная работа 2.
Имя и значение символа, свойства символа
Цель работы
: изучить понятия переменной и константы, формы quote, set, setq, eval, а также свойства символа, научиться задавать и изменять свойства.
Для выполнения лабораторной работы необходимо:
1. Изучить учебные материалы, представленные в презентациях лабораторных практикумов. При изучении материала необходимо повторить все представленные в презентациях примеры.
Забиваем Сайты В ТОП КУВАЛДОЙ - Уникальные возможности от SeoHammer
Каждая ссылка анализируется по трем пакетам оценки: SEO, Трафик и SMM.
SeoHammer делает продвижение сайта прозрачным и простым занятием.
Ссылки, вечные ссылки, статьи, упоминания, пресс-релизы - используйте по максимуму потенциал SeoHammer для продвижения вашего сайта.
Что умеет делать SeoHammer
— Продвижение в один клик, интеллектуальный подбор запросов, покупка самых лучших ссылок с высокой степенью качества у лучших бирж ссылок.
— Регулярная проверка качества ссылок по более чем 100 показателям и ежедневный пересчет показателей качества проекта.
— Все известные форматы ссылок: арендные ссылки, вечные ссылки, публикации (упоминания, мнения, отзывы, статьи, пресс-релизы).
— SeoHammer покажет, где рост или падение, а также запросы, на которые нужно обратить внимание.
SeoHammer еще предоставляет технологию Буст, она ускоряет продвижение в десятки раз,
а первые результаты появляются уже в течение первых 7 дней.
Зарегистрироваться и Начать продвижение
2. Выполнить задания в конце презентаций лабораторного практикума.
В результате выполнения лабораторной работы студент должен научиться назначать переменной значение, а также определять ее свойства, использовать формы quote и eval для приостановления и запуска вычислений.
На выполнение лабораторной работы предусмотрено 2 часа.
Лабораторная работа 3.
Определение функции, передача параметров и область их действия. Внутреннее представление списков.
Цель
занятия
: изучение формы для определения функций, понятий вычислительного окружения или контекста, статической, глобальной и динамической переменной.
Для выполнения лабораторной работы необходимо:
1. Изучить учебные материалы, представленные в презентациях лабораторных практикумов. При изучении материала необходимо повторить все представленные в презентациях примеры.
2. Выполнить задания в конце презентаций лабораторного практикума.
В результате выполнения лабораторной работы студент должен научиться описывать функции и различать типы переменных в зависимости от контекста.
На выполнение лабораторной работы предусмотрено 2 часа.
Лабораторная работа 4.
Вычисления в Лиспе.
Цель
занятия
: рассмотреть классификацию лисповских форм, изучить основные лисповские формы.
Порядок выполнения работы:
1. Изучить учебные материалы, представленные в презентации лабораторных практикумов. При изучении материала необходимо повторить все представленные в презентациях примеры.
2. Выполнить задания в конце презентаций лабораторного практикума.
В результате выполнения данной работы студенты должны познакомиться и научиться использовать лисповские формы, представленные в презентации, для вычислений в Лиспе.
На выполнение лабораторной работы предусмотрено 2 часа.
Лабораторная работа 5.
Внутреннее представление списков. Основы рекурсии.
Цель работы
: изучить понятие списочной ячейки, а также внутреннее представление списков, понятие простой рекурсии, изучить принципы построения рекурсивных алгоритмов, изучить рекурсивные функции обработки списков.
Порядок выполнения работы:
1. Изучить учебные материалы, представленные в презентациях лабораторных практикумов. При изучении материала необходимо повторить все представленные в презентациях примеры.
2. Выполнить задания в конце презентаций лабораторного практикума.
Сервис онлайн-записи на собственном Telegram-боте
Попробуйте сервис онлайн-записи VisitTime на основе вашего собственного Telegram-бота:
— Разгрузит мастера, специалиста или компанию;
— Позволит гибко управлять расписанием и загрузкой;
— Разошлет оповещения о новых услугах или акциях;
— Позволит принять оплату на карту/кошелек/счет;
— Позволит записываться на групповые и персональные посещения;
— Поможет получить от клиента отзывы о визите к вам;
— Включает в себя сервис чаевых.
Для новых пользователей первый месяц бесплатно.
Зарегистрироваться в сервисе
В результате выполнения данной работы студенты должны получить представление о внутренней структуре списков, научиться использовать простую рекурсия для построения функций для работы со списками.
На выполнение лабораторной работы предусмотрено 4 часа.
Лабораторная работа 6.
Другие формы рекурсии
Цель занятия
: изучить различные формы рекурсии, научиться использовать параллельную, взаимную рекурсию и рекурсию высших порядков для реализации функций обработки списков.
Порядок выполнения работы:
1. Изучить учебные материалы, представленные в презентации лабораторного практикума. При изучении материала необходимо повторить все представленные в презентациях примеры.
2. Выполнить задания в конце презентации лабораторного практикума.
В результате выполнения данной работы студенты должны научиться использовать различные формы рекурсии для построения функций для работы со списками и множествами, представленными списками.
На выполнение лабораторной работы предусмотрено 4 часа.
Лабораторная работа 7.
Функционалы
Цель работы
: изучить виды функционалов и способы их использования.
Порядок выполнения работы:
1. Изучить учебные материалы, представленные в презентации лабораторного практикума. При изучении материала необходимо повторить все представленные в презентациях примеры.
2. Выполнить задания в конце презентации лабораторного практикума.
В результате выполнения данной работы студенты должны научиться применять функционалы для вычислений.
На выполнение лабораторной работы предусмотрено 2 часа.
Защита лабораторных и семестровых работ
Для защиты лабораторной или семестровой работы необходимо представить отчет, содержащий следующие сведения:
1. Введение.
2. Описание решаемой задачи.
3. Код задачи на Лиспе с комментариями.
4. Описание тестов, подтверждающих правильность работы программы.
При защите работы студент должен уметь объяснить алгоритм решения задачи, а также основные конструкции в тексте программы, обосновать полученные результаты.
|