Есть функция: (define (loop x y) (if (null? x) y (let ((temp (cdr x))) (set-cdr! x y) (loop temp x)))) где set-cdr: (define (set-cdr! x new-cdr) (set! x (cons (car x) new-cdr)) x) Никак не могу понять, почему (loop '(a b c d) '()) выдаёт '(d), а не '(d c b a).
Ответ на:
комментарий
от grob
Ответ на:
комментарий
от grob
Ответ на:
комментарий
от grob
Ответ на:
комментарий
от seiken
Ответ на:
комментарий
от grob
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Почему в scheme не любят set! ? (2014)
- Форум scheme + lazy streams? (2007)
- Форум Необязательные параметры функции в Scheme (2014)
- Форум хвостовая рекурсия (lisp/scheme) (2007)
- Форум GIMP - Scheme (Script-Fu) - Cохранение слоев в png (2017)
- Форум Readable Lisp S-expressions Project (2013)
- Форум Списки в Scheme/Lisp (2005)
- Форум Получить список из листьев дерева (scheme) (2006)
- Форум [лисп?] Festival text2wave. Как оно работает? (2009)
- Форум простой пример на scheme (2006)