Lisp: различия между версиями
Материал из Поле цифровой дидактики
Patarakin (обсуждение | вклад) |
Patarakin (обсуждение | вклад) |
||
Строка 33: | Строка 33: | ||
<syntaxhighlight lang="Lisp" inline> | <syntaxhighlight lang="Lisp" inline> | ||
(* (+ 1 2) (- 3 4)) | (* (+ 1 2) (- 3 4)) | ||
</syntaxhighlight> | |||
---- | |||
<syntaxhighlight lang="lisp"> | |||
(defun my-copy-tree (D) | |||
(cond ((null D) nil) | |||
((atom D) D) | |||
(t (cons (my-copy-tree (car D)) | |||
(my-copy-tree (cdr D)))))) | |||
</syntaxhighlight> | </syntaxhighlight> | ||
[[Категория:Язык программирования]] | [[Категория:Язык программирования]] |
Версия 19:44, 17 января 2023
Краткое описание языка | LISP (от англ. LISt Processing language — «язык обработки списков», современное написание: Lisp) — семейство языков программирования, программы и данные в которых представляются в виде списков. |
---|---|
Компетенции в каких сферах формирует | Computational Thinker |
Парадигмы программирования | |
Возрастная категория | 17 |
Назначение языка (Общее / Учебное) | Язык общего назначения |
Visual_Text_Blocks | Текст |
Измерение (2D/3D/Tangible) | 2D |
Область знаний | |
Открытость продукта | Открытый |
Address | https://common-lisp.net/ |
Предки (Ancestors) | IPL |
Потомки (Descendants) | Scheme, Clojure, Лого, Julia, Snap!, Lua |
Активность в данный момент | Project is active |
Доступны ремиксы? | Нет |
Год создания | 1960 |
Создатели | Маккарти, Hal Abelson |
Поясняющее видео | |
Используется для создания мобильных приложений? | Нет |
- Lisp упоминается в свойствах следующих страниц
- Structure and Interpretation of Computer Programs, Искусственный интеллект, Программирование на языках высокого уровня, Рекурсия, Функциональное программирование
Создавался как язык для работы в области искусственного интеллекта
Основная структура данных Лиспа — динамический список атомов, определяемый рекурсивно как головной объект и присоединённый к нему список-хвост. Поскольку голова списка тоже может быть списком, список является формой представления произвольного дерева (сам список верхнего уровня — корень, входящие в него подсписки второго и следующих уровней — узлы, атомы — листья).
Видео пояснение
https://www.youtube.com/watch?v=-J_xL4IGhJA
Пояснения к синтаксису
(* (+ 1 2) (- 3 4))
(defun my-copy-tree (D)
(cond ((null D) nil)
((atom D) D)
(t (cons (my-copy-tree (car D))
(my-copy-tree (cdr D))))))