Есть ли эквивалент обычного Lisp * Print-Circle * по схеме?
Вопрос
Я работаю над схемой DECE (упражнение SICP 3.23), и у меня есть простая реализация в вдвойне связанного списка, которую я хотел бы проверить, но я не могу выяснить, как распечатать круговой список в Схема (MIT-схема и Mzcheme / Racket).
В CL есть флаг печатный круг Для такого рода вещи есть что-то эквивалентное по схеме? Я пробовал «с помощью-выходом для усеченной строки», но, кажется, не доступен в сборке MIT-схемы, которую я получил от MacPorts, хотя я думаю, что это должно быть? Есть ли какой-то способ получить эту процедуру в REPL, мне нужно что-то включить?
http://sicp.ai.mit.edu/fall-2003/manuals/scheme-7.5.5/doc/scheme_15.html.
Спасибо!
Решение
Нет ничего стандарта для этого, но большинство реализаций схемы будут иметь возможность контролировать свои принтеры. В дочерней части, есть print-graph
Параметр, который делает это. Но смотрите также Пакет поддержки SICP Для ракетки, которая должна сделать вашу жизнь с SICP намного проще.