我需要一些函数,其中包括定义一个新的全局符号。这样我就可以像这样使用它:
(define (func-prototype symbol value comment)
(define symbol value) ; this should somehow be reformulated
(format "~a=~a !~a\n" symbol value comment))
(define string-list (map func-prototype
'((s1 1 "first value")
(s2 20 "second value")
(s3 300 "third value))))
并能够得到以下结果:
> string-list
'("s1=1 !first value\n"
"s2=20 !second value\n"
"s3=300 !third value\n")
> s1
1
> s2
20
> s3
300
这可以作为一个函数实现,还是只能在宏的帮助下实现?您能否建议任何可能的实现或至少提供一些可能有用的提示/参考?