とりわけ、新しいグローバルシンボルを定義する関数が必要です。私がこのようにそれを使うことができるように:
(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
これは関数として実装できますか、それともマクロの助けを借りてのみ実装できますか?可能な実装を提案するか、少なくとも役立つかもしれないいくつかのヒント/リファレンスを教えてください。