Основные понятия лиспа
ЛЕКЦИЯ 1.
Введение. Основные понятия Лиспа. |
Содержание
ЛИСП - язык функционального программирования.
Язык ЛИСП (LISP) был разработан в 1958 году американским ученым Джоном Маккарти как функциональный язык, пред- назначенный для обработки списков. ( LISt Processing). Lisp - означает "лепетать". С появлением этого языка машина стала пока лепетать, a не говорить по-человечески. |
|||
В основу языка положен серьезный математический аппарат:
Долгое время язык использовался узким кругом исследователей. Широкое распространение язык получил в конце 70-х - начале 80-х годов с появлением необходимой мощности вычислительных машин и соответствующего круга задач. В настоящем - Лисп одно из главных инструментальных средств систем искусственного интеллекта. Он принят как один из двух основных ЯП для министерства обороны США и постепенно вытесняет второй ЯП - АДА.
Система AutoCAD разработана на Лиспе.
Основные особенности Лиспа.
До изучения языка трудно говорить об его особенностях, но
тем не менее...
Это позволяет программе обрабатывать другие программы и даже саму себя.
с каким-либо типом.
расшифровывают как Lots of Idiotic Silly Parentheses.
ЛИСП. Элементарные понятия.
Символьные данные: выражения
и представление данных.
1 Выражения.
Основу ЛИСПа составляют символьные выражения, которые
называются S-выражениями и образуют область определения
для функциональных программ.
S-выражение (Simbolic expresion) - основная структура данных
в ЛИСПе.
(ДЖОН СМИТ 33 ГОДА) \ S-ВЫРАЖЕНИЯ ((МАША 21) (ВАСЯ 24) (ПЕТЯ 1)) /
S-выражение - это либо атом, либо список.
2 Атомы.
Атомы - это простейшие объекты Лиспа, из которых
строятся остальные структуры.
Атомы бывают двух типов - символьные и числовые.
Символьные атомы - последовательность букв и цифр,
при этом должен быть по крайней мере один символ
отличающий его от числа.
ДЖОН АВ13 В54 10А
Символьный атом или символ - это не идентификатор
переменой в обычном языке программирования.
Символ как правило обозначает какой либо предмет, объект
вещь, действие.
Символьный атом рассматривается как неделимое целое.
К символьным атомам применяется только одна операция:
сравнение.
В МCL в состав символа могут входить:
+ - * / @ $ % ^ _ \ <>
Числовые атомы - обыкновенные числа
124
-344
4.5 3.055Е8
Числа это константы.
Типы чисел зависят от реализации ЛИСПа
Атом - простейшее S-выражение.
3 Списки.
В ЛИСПЕ список это последовательность элементов (list).
Элементами являются или атомы или списки.
Списки заключаются в скобки, элементы списка разделяются
пробелами.
(банан) 1 атом
(б а н а н) 5 атомов
(a b (c d) e) 4 элемента
Таким образом список - это многоуровневая или иерархическая структура данных, в которой открывающиеся и закрывающиеся скобки находятся в строгом соответствии.
(+ 2 3) 3 атома
(((((первый) 2) второй) 4) 5) 2 элемента
Список, в котором нет ни одного элемента, называется пустым
списком и обозначается "()" или символом NIL.
NIL - это и список и атом одновременно.
Пустой список играет такую же важную роль в работе со списками,
что и ноль в арифметике.
Пустой список может быть элементом других списков.
(NIL) ;список состоящий из атома NIL
(()) ;то же самое, что и (NIL)
((())) ;- " -((NIL))
(NIL ()) ;список из двух других списков
4 Логические константы.
NIL обозначает кроме этого, в логических выражениях
логическую константу "ложь" (false).
Логическое "да"(true) задается символом "Т".
Атомы и списки - это символьные выражения или S-выражения.
Соотношение рассмотренных основных типов ЛИСПА поясняет
диаграмма: