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))))))
