Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Функциональное (аппликативное) программирование



Первым языком функционального типа является язык ЛИСП, созданный в Массачусетском технологическом институте в 1956-1959 г. Джоном Маккарти, который в 1956 г. Впервые предложил термин «искусственный интеллект». Значительное число работ по искусственному интеллекту реализовано на ЛИСПе.

Программа, написанная на функциональном языке, состоит из неупорядоченного набора уравнений, определяющих функции и значения, которые задаются как функции от других значений. Программа и данные ЛИСПа существуют в форме символьных выражений, которые хранятся в виде списковых структур.

Рассмотрим, например, вычисление суммы целых чисел от 1 до 10. На императивном языке, таком как С, это может быть сделано при помощи простого цикла, на каждом шаге которого изменяется значение накопленной суммы в переменной total и переменной цикла i.

int total = 0; for (i=1; i<=10; ++i) total += i;

В функциональном языке та же программа будет записана без использования операций, изменяющих значения переменных. Например, на языке Haskell результат может быть вычислен выражением:

sum [1..10]

Здесь [1..10] — это выражение, обозначающее список целых чисел от 1 до 10, а sum – это функция, которая вычисляет сумму заданного списка значений.

Кроме ЛИСПа, к функциональным языкам относятся РЕФАЛ (разработанный в середине 60-х годов В.Ф. Турчиным в МГУ им. М.В. Ломоносова), Haskell, Clean, ML, OCaml, F#.





Дата публикования: 2015-09-17; Прочитано: 466 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.009 с)...