Ббк 32. 973-018 г рецензент канд физ мат наук, Ф. А. Мурзин
Download 278.16 Kb.
|
FIT-Gor-PP3
Пример 27. Выбор ветви
Пример 28. Вычисление параметров Функциональная модель взаимодействия монад Примерно то же самое обеспечивают EVAL-P и APPLY-P, рассчитанные на использование списков свойств атома для хранения постоянных значений и функциональных определений. Индикатор MONAD указывает в списке свойств атома на правило интерпретации функций, относящихся к отдельной монаде, MACRO – на частный метод построения представления функции. Функция VALUE реализует методы поиска текущего значения переменной в зависимости от контекста и свойств атомов.
Пример 29. Функции разных категорий
Пример 30. Специальные макрофункции поддерживают пост-вычисления параметров Или то же самое с вынесением общих подвыражений во вспомогательные параметры.
Пример 31. Исключение лишнего поиска свойства MONAD
Пример 32. Исключение лишнего поиска свойства MACRO Расширение системы программирования при таком определении интерпретации осуществляется простым введением/удалением соответствующих свойств атомов и функций. Полученная схема интерпретации допускает разнообразные категории функций, реализуемые как отдельные монады, и макросредства конструирования функций, позволяет задавать различные механизмы передачи параметров функциям. Так, в языке Clisp различают кроме обычных, обязательных и позиционных ещѐ и необязательные (факультативные), ключевые и серийные (многократные, с переменным числом значений) параметры. При разработке и отладке программ происходит развитие средств и методов обработки данных, что приводит к изменению типов представления объектов. Объекты из неопределенных становятся константами или переменными, из обработки скаляров формируется обработка структур данных, от структур данных вероятен переход к функциям и файлам и т. п. Не менее существенное развитие происходит и на уровне постановки задачи. Задача из новой, решение которой имеет ранг пробы или демонстрации, становится направлением исследования, в котором созревают практичные или точные подзадачи, возможен и переход к поиску решений на пределе возможностей оборудования. Требования к средствам и методам решения задач на столь различных уровнях изученности привели к гибкости, присущей парадигме функционального программирования.
Пример 33. Самоописание Lisp-интерпретатора, предложенное Дж. Маккарти в начале 1960-х годов Наиболее очевидные следствия из выбранных принципов ФП: процесс разработки программ разбивается на фазы: построение базиса и его пошаговое расширение; рассмотрение программы как реализации алгоритма естественно дополняется табличной реализацией функций, т. е. допустимо использование хранимых графиков функций в виде структур из аргументов и соответствующих результатов наряду с процедурами; прозрачность ссылок обеспечена совпадением значений одинаково выглядящих формул, вычисляемых в одинаковом контексте; предпочтение универсальных функций и функционально полных систем, трудоемкость первичной реализации которых компенсируется надежностью определений и простотой применения. Язык программирования Lisp и сложившееся на его основе функциональное программирование реально показали свои сильные стороны как инструментарий исследования и освоения новых областей применения вычислительной техники. Это аргумент в пользу функционального подхода к решению новых сложных задач: доступны преобразования программ и процессов; осуществима лингвистическая обработка информации; поддерживается гибкое управление базами данных; возможна оптимизация информационных систем, вплоть до полного исключения потерь информации; моделирование общения. Спецификация Таблица 32 Download 278.16 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling