52700.fb2
Стратегия написания программ
Описание задачи
Набросок решения
Каркас. Типы и классы
Ленивое программирование
Пятнашки
Цикл игры
Приведём код в порядок
Формат запросов
Последние штрихи
Правила игры
Упражнения
Лямбда-исчисление
Лямбда исчисление без типов
Составление термов
Абстракция
Редукция. Вычисление термов
Рекурсия. Комбинатор неподвижной точки
Кодирование структур данных
Конструктивная математика
Расширение лямбда исчисления
Комбинаторная логика
Связь с лямбда-исчислением
Немного истории
Лямбда-исчисление с типами
Краткое содержание
Упражнения
Теория категорий
Категория
Функтор
Естественное преобразование
Монады
Категория Клейсли
Дуальность
Начальный и конечный объекты
Начальный объект
Конечный объект
Сумма и произведение
Экспонента
Краткое содержание
Упражнения
Категориальные типы
Программирование в стиле оригами
Индуктивные и коиндуктивные типы
Существование начальных и конечных объектов
Гиломорфизм
Краткое содержание
Упражнения
Дополнительные возможности