如果有人可以帮助我,我真的很感激。我一直想敲打我的头一天试图让它发挥作用。我搜索了互联网并重读了手册,但我只是不明白。
guile << __EOF__
( define heading-list (list 'a 'b 'c)
)
(define (make-heading-list)
( let* ((mycond #t))
( if mycond
( set!
heading-list
( append (
heading-list
(list 'd)
)
)
)
( display 'false)
)
heading-list
)
)
(make-heading-list)
__EOF__
当我跑步时,我得到:
ERROR: In procedure setter:
ERROR: In procedure setter: Wrong type argument in position 1: (a b c)
我知道格式是非标准的 - 我会在它工作时修复它。
EDIT ----------------------------------------- 这是工作代码(希望现在合理格式化):
guile << __EOF__
(define heading-list (list 'a 'b 'c))
(define (make-heading-list)
(let* ((mycond #t))
(if mycond
(set!
heading-list
(append heading-list (list 'd)))
(display 'false))
heading-list))
(make-heading-list)
__EOF__
答案 0 :(得分:2)
heading-list
是一个列表。您正在使用它,就好像它是一个程序。 (heading-list)
表示&#34;将过程heading-list
应用于零参数&#34;。因此错误消息&#34;要应用的错误类型&#34;。