Самым простым способом было бы eval
результат string->symbol
, например, так:
> (define dict 5)
> (eval (string->symbol "dict"))
5
Однако участие eval
почти никогда не является правильным решением.Гораздо лучший способ связать строки со значениями - использовать хеш-таблицу, как подсказывает @yi_H:
> (define ht (make-hash))
> (hash-set! ht "dict" 5)
> (hash-ref ht "dict")
5
Обновление : изначально я пропустил тег [racket]
;пример должен теперь работать с #lang racket
.