Для студентов МГИМО по предмету Любой или несколько предметовПреобразование типизированных функций в реляционную формуПреобразование типизированных функций в реляционную форму
4,9551048
2024-07-272024-07-27СтудИзба
Курсовая работа: Преобразование типизированных функций в реляционную форму
Описание
Оглавление
3
Реляционное программирование [1] является технологией, основан-ной на построении программы в виде набора отношений. Реляционная программа может быть исполнена в различных “направлениях”, то есть независимо от того, какие из аргументов отношения известны, а какие необходимо найти. Это делает возможным, например, моделирование вычисления обратных функций.
Хотя многие логические языки программирования, такие как Prolog, Mercury [2] или Curry [3], позволяют использовать некоторые реляци-онные эффекты, был создан miniKanren [4] — язык, который специ-ально разработан для реляционного программирования. Изначально данный язык являлся небольшим предметно-ориентированным языком (Domain-specific language, DSL) на основе языка Scheme/Racket. Его ми-нимальная реализация [5] содержит менее ста строк кода. Впоследствии miniKanren нашел применение, будучи встроенным во многие языки программирования, среди которых Haskell, Standard ML и OCaml.
Непосредственная разработка реляционных программ является слож-ной задачей, требующей от разработчика глубокого изучения языка miniKanren и его особенностей. Однако во многих случаях требуемая реляционная программа может быть получена из некоторой функцио-нальной программы автоматически. Таким образом, появляется задача
| 1. | Введение | 4 | |
| 2. | Постановка задачи | 6 | |
| 3. | Обзор литературы | 7 | |
| 3.1. | Реляционное программирование и miniKanren . . . . . . | 7 | |
| 3.2. | Схожиеработы ........................ | 10 | |
| 4. | Входной язык и его реляционное расширение | 13 | |
- Преобразование функциональных программ в реляцион-
| ную форму | 21 |
- Доказательство статической и динамической корректно-
| сти преобразования функций реляционную форму | 25 | ||
| 7. | Апробация | 34 | |
| 7.1. | Интерпретатор высшего порядка для лямбда-исчисления | 35 | |
| 7.2. | Вывод типов Хиндли-Милнера . . . . . . . . . . . . . . . | 37 | |
| 7.3. | Выводыпоапробации..................... | 38 | |
| 8. | Заключение | 39 | |
| Список литературы | 41 | ||
3
- Введение
Реляционное программирование [1] является технологией, основан-ной на построении программы в виде набора отношений. Реляционная программа может быть исполнена в различных “направлениях”, то есть независимо от того, какие из аргументов отношения известны, а какие необходимо найти. Это делает возможным, например, моделирование вычисления обратных функций.
Хотя многие логические языки программирования, такие как Prolog, Mercury [2] или Curry [3], позволяют использовать некоторые реляци-онные эффекты, был создан miniKanren [4] — язык, который специ-ально разработан для реляционного программирования. Изначально данный язык являлся небольшим предметно-ориентированным языком (Domain-specific language, DSL) на основе языка Scheme/Racket. Его ми-нимальная реализация [5] содержит менее ста строк кода. Впоследствии miniKanren нашел применение, будучи встроенным во многие языки программирования, среди которых Haskell, Standard ML и OCaml.
Непосредственная разработка реляционных программ является слож-ной задачей, требующей от разработчика глубокого изучения языка miniKanren и его особенностей. Однако во многих случаях требуемая реляционная программа может быть получена из некоторой функцио-нальной программы автоматически. Таким образом, появляется задача
Характеристики курсовой работы
Учебное заведение
Семестр
Просмотров
1
Размер
708 Kb
Список файлов
Преобразование типизированных функций в реляционную форму.doc
Комментарии
Нет комментариев
Стань первым, кто что-нибудь напишет!
МГИМО
Tortuga















