如何替换球拍中 cons 单元格内的变量值

How to replace variable value inside cons cell in racket

我想做这样的事情

(cons '(someword,string->symbol somevarname) (restoflist))

但是 somevarname 永远不会被它的值替换。

我认为这是可能的?

是的,但是因为您引用了包含 string->symbol 的表达式,它从未被计算过。我会尝试展示获得您想要的东西的正确方法,但不清楚那是什么。

根据您的评论(并忽略逗号),您似乎想要:

(cons (list 'someword (string->symbol "somevarname")) restoflist)

引用生成文字列表。要在运行时动态创建列表,您还可以使用准引用和取消引用。对于您的情况,它看起来类似于以下内容(假设 somevarname 是本地绑定或全局绑定):

(cons `(someword ,(string->symbol somevarname)) (restoflist))