Форум программистов, компьютерный форум, киберфорум
Lisp
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.80/41: Рейтинг темы: голосов - 41, средняя оценка - 4.80
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755

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

09.04.2020, 11:18. Показов 11725. Ответов 146
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Начал смотреть другой курс по функциональному программированию на Lisp
https://www.youtube.com/watch?... ebDaSS1P33
Смотреть желательно в HD на большом мониторе, иначе код может быть не виден из-за мелкого шрифта и придется скачивать программой (в Windows это Ummy Video Downloader) делать скриншот и увеличивать.
И там сказано, что Lisp предполагает, что Вы пишите в чисто функциональном стиле, чисто функциональной парадигме. А по другому если программировать, немного искажая далее сказанное, является дурным тоном. Что Вы об этом думаете?

Это не тот видео курс, о котором упоминал ранее
https://www.youtube.com/playli... zm9GG4wOfU
https://openedu.ru/course/ITMOUniversity/FPBC/
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
09.04.2020, 11:18
Ответы с готовыми решениями:

Функциональное программирование
Написать функцию, которая запрашивает у пользователя ФИО студента группы (список группы составлен ранее) и выдает следующие данные о нем: ...

Функциональное программирование на языке Lisp
Добрый вечер, всем форумчанин! Тема №1: Определение простых рекурсивных функций обработки списков Задание 1: (COUNT3 a x)...

Харрисон Введение в функциональное программирование (книга с примерами на языке ML)
Где брать дистрибутив ML для изучения примеров? Что потом? Какая применимость этого? Можно ли писать полезные современные программы, делать...

146
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
19.04.2020, 12:50  [ТС]
Студворк — интернет-сервис помощи студентам
Факториал в нижнем окне уже вычислялся в начале этого 5 урока. Об этом шло обсуждение на предыдущих страницах темы.

Такой кнопки не наблюдал. У меня в XP не весь функционал работает. Программа падает с ошибкой при нажатии кое-где.
0
4528 / 3522 / 358
Регистрация: 12.03.2013
Сообщений: 6,038
19.04.2020, 13:02
Это странно и нехорошо. В чём тогда смысл этой "IDE"? Отступы не шутка, это жизненная необходимость, если код должен читать человек. Например, если вы выложите неотформатированный код на форум, то собеседнику придётся сначала скопировать его в емакс и отформатировать. Кому охота?

Да вы и сами через несколько дней ничего не поймёте. Нечитаемая каша.
1
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
19.04.2020, 13:20  [ТС]
Не могли бы Вы посмотреть код в оригинале на странице https://www.youtube.com/watch?... 33&index=5 в комментариях к этому видео? К тому же там обнаружилась ошибка монтажа, код которой обсуждался здесь в теме.
0
4528 / 3522 / 358
Регистрация: 12.03.2013
Сообщений: 6,038
19.04.2020, 13:37
Открыл на 13:50, увидел закрывающие скобки на отдельных строках вот так:
Lisp
1
2
3
...
  )
)
Глаза начали кровоточить. Я понимаю, когда такой код напишет студент, который кроме сиподобного синтаксиса в жизни ничего не видел, которому лисп по барабану, которому получить зачёт и забыть. Но как можно преподавать лисп, если не знаешь даже простейших правил оформления кода? и из каких соображений можно учиться у такого "преподавателя".

Но я не понимаю, в чём ваш вопрос. Судя по скриншоту, вы успешно определили функцию fibservice. Можете проверить в REPLE, правильно ли она работает.

На момент 13:50 я вижу определение функций fib и fibservice. Автор курса считает, что eq - подходящее сравнение для чисел. Ну что ж, может, он тоже пишет на странном диалекте, для которого это в порядке вещей. Логика с первого взгляда не очень понятна. Функция fib то возвращает число, то список. Зачем-то опциональный аргумент. Самое мутное вычисление чисел Фибоначчи, которое я видел в жизни.
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
19.04.2020, 13:43  [ТС]
Не могли бы Вы посмотреть код в комментариях под видео и прочитать, что там написано? Потому что в видео ошибка.
0
4528 / 3522 / 358
Регистрация: 12.03.2013
Сообщений: 6,038
19.04.2020, 13:55
На 13:57 я вижу сессию в клиспе, в которой каким-то образом отъелось начало определения функции.
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
19.04.2020, 14:00  [ТС]
Об этом написано в комментариях под видео.
0
4528 / 3522 / 358
Регистрация: 12.03.2013
Сообщений: 6,038
19.04.2020, 14:16
Короче, по монтированию видео я не специалист. Если есть вопрос по лиспу - задавайте прямо тут.
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
19.04.2020, 15:00  [ТС]
Цитата Сообщение от helter Посмотреть сообщение
скопировать его в емакс и отформатировать
Если можно автоматически отформатировать, то что там нажать?
0
4528 / 3522 / 358
Регистрация: 12.03.2013
Сообщений: 6,038
19.04.2020, 15:08
Lisp > Indent sexp

Но мне трудно поверить, что в LispIDE нет форматирования. Посмотрели бы в меню. Это базовая функциональность.
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
19.04.2020, 15:39  [ТС]
Такой код почему то не форматируется
Lisp
1
2
; SLIME 2013-11-17
CL-USER> (  +  2  8  )
0
4528 / 3522 / 358
Регистрация: 12.03.2013
Сообщений: 6,038
19.04.2020, 15:43
Он отступы расставляет. А лишние пробелы люди сами не ставят.
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
19.04.2020, 16:43  [ТС]
Пробовал отформатировать
Lisp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
; SLIME 2013-11-17
CL-USER> (defun fib (x &optional y)
(cond
((<= x 0) 0)
((null y) (car (fib x T)))
((eq x 1) '(1 0))
((eq x 2) '(1 1))
(T (fibservice (fib (- x 1) T)))
))
 
(defun fibservice (lst)
(cons
(+ (car lst) (cadr lst))
(cons (car lst) nil)))
0
4528 / 3522 / 358
Регистрация: 12.03.2013
Сообщений: 6,038
19.04.2020, 16:46
Безуспешно. Кто ж в REPLе функции определяет?
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
19.04.2020, 16:46  [ТС]
Цитата Сообщение от helter Посмотреть сообщение
Это странно и нехорошо. В чём тогда смысл этой "IDE"?
Подсветка парных скобок, чего не нашел в Emacs.
0
4528 / 3522 / 358
Регистрация: 12.03.2013
Сообщений: 6,038
19.04.2020, 17:00
https://bit.ly/2XNFt7e
Зачем нужна подсветка скобок в каше без отступов, я не понимаю. Она всё равно нечитаемая.
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
19.04.2020, 17:26  [ТС]
Цитата Сообщение от helter Посмотреть сообщение
Lisp > Indent sexp
Этот пункт пропадает, если работать с верхним окном.

Цитата Сообщение от helter Посмотреть сообщение
Зачем нужна подсветка скобок в каше без отступов
Вот для этого CAR и CDR

Как делать подсветку, искал ранее в Гугле и смотрел по ссылкам. Решения, которое бы меня вдохновило на действия, не нашел.
0
4528 / 3522 / 358
Регистрация: 12.03.2013
Сообщений: 6,038
19.04.2020, 18:15
Цитата Сообщение от supmener Посмотреть сообщение
Этот пункт пропадает, если работать с верхним окном.
Одна из причин, по которым мне не нравится емакс - чехарда окон, которая происходит независимо от меня и моего знания о ней. "Верхним окном" может оказаться что угодно. Если вы имеете в виду REPL, то могу только повторить то, что код пишут не в REPLе, а в файле. Я, наверно, надоел вам с этим тезисом. Обещаю, это было в последний раз.
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
19.04.2020, 18:42  [ТС]
Сохранил в файл, вставленный в верхнее окно текст, затем проделал эту операцию форматирования, так как нужные кнопки появились. При этом похоже, что не форматируется. Сначала нажимал пункт без выделения кода, затем с выделением. Нужно ли выделять перед форматированием?
Миниатюры
Функциональное программирование на Lispe  
0
 Аватар для supmener
87 / 95 / 15
Регистрация: 26.06.2013
Сообщений: 4,755
19.04.2020, 19:05  [ТС]
Не туда запостил.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
19.04.2020, 19:05

Функциональное программирование: ввести фразу на естественном языке и преобразовать ее в список
Задание:написать функцию, которая вводит фразу на естественном языке и преобразует ее в список.

Функциональное программирование: определить, является ли аргумент функции списком элементов/атомов
Определить функции, которые проверяют, является ли их аргумент: a) списком из 2, 3, ..., n элементов; b) cписком из 2, 3, ..., n атомов.

Рекурсивные вычисления в Lispe
по парно менять элементы списка местами

Онлайн-курс "Функциональное программирование: базовый курс" (Common Lisp)
Открытое образование: Онлайн-курс Функциональное программирование: базовый курс В курсе изучаются основы функционального подхода к...

Нужно подсчитать сумму ряда на Lispe
Y=sqrt(3+sqrt(6+sqrt(9+...sqrt(3*n))))


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
120
Ответ Создать тему
Новые блоги и статьи
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701 Купил два термопринтера QR701. На сэлф-тесте написано: Language: PC936 (GB18030). Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
Создание формы заимствованного документа
Maks 03.08.2026
Задача: Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также табличная часть со следующими реквизитами: - Расчетный счет покупателя. . .
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача: В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
Почему SEO не начинается с ключевых слов: что проверить до написания текстов
Neotwalker 01.08.2026
Когда владельцу сайта предлагают заняться SEO, первым шагом часто становится сбор запросов и написание текстов. Логика кажется понятной: 1. Находим ключевые слова. 2. Добавляем их на. . .
Знание — сила: Доктрина интенциональности знаний, углубление в формулу
Hrethgir 01.08.2026
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11957&stc=1&d=1785567302 Знаменитый афоризм Фрэнсиса Бэкона «Знание — сила» (Scientia potentia est) в массовой культуре принято понимать. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru