Scheme 如何打印不带括号的列表?

Scheme 如何打印不带括号的列表?,scheme,Scheme,我是这个计划的新用户。我只是想知道如何打印没有括号的列表 例如: (定义mylist’(a b c d f g)) (显示mylist) (a b c d f g) 我想按以下格式打印: a b c d f g 打印值的唯一方法是使用类似display的打印过程。因此: (显示'a);==>,将字符串“a”打印到屏幕上 (显示’(a b c));==>,将字符串“(a b c)”打印到屏幕上 记住这一点,您可以通过打印列表的元素来打印列表: (定义(显示列表lst) (let循环((lst-l

我是这个计划的新用户。我只是想知道如何打印没有括号的列表

例如:

(定义mylist’(a b c d f g))

(显示mylist)

(a b c d f g)

我想按以下格式打印:

a b c d f g


打印值的唯一方法是使用类似
display
的打印过程。因此:

(显示'a);==>,将字符串“a”打印到屏幕上
(显示’(a b c));==>,将字符串“(a b c)”打印到屏幕上
记住这一点,您可以通过打印列表的元素来打印列表:

(定义(显示列表lst)
(let循环((lst-lst))
(何时(第1对)
(显示器(车辆lst))
(显示“”)
(循环(cdr lst)))
(新行)
或者我们可以使用更高阶的程序:

(定义(显示列表lst)
(每个(λ)(什么)
(显示什么)
(显示“”)
lst)
(新行)
它们的工作原理类似于显示器。它们打印列表并计算为与
newline
相同的返回值,这是一个未指定的依赖于实现的值。在大多数实现中,它是一个从未打印过的值

(定义mylist'(a b c d f g))
(显示列表mylist);==>,将“a b c d f g\n”打印到屏幕上
请记住,这只会省略外部列表的括号,因此:

(显示列表“((a)(b));=>,在屏幕上打印“(a)(b)\n