2009-12-11 2 views

ответ

0

Как похоже это должно быть? eval работы Clojure по спискам, так:

(eval (list + 1 2)) #=> 3 
+0

Я знаю об eval, но я не думаю, что это работает для меня. Я действительно хочу оценить «String» –

31
user> (eval (read-string "(+ 1 2)")) 
3 

Вы, вероятно, не когда-нибудь понадобится, чтобы сделать это. Макросы и fns делают такие вещи ненужными в 99% случаев. Это довольно хрупкое и может быть небезопасным, если эти строки поступают с пользовательского ввода и т. Д.

+1

Ну, я хочу сделать что-то радикально небезопасное: REPL chatbot. –

+0

В #clojure есть clojurebot. –

+8

load-string делает именно то, что он ищет – Abhijith

Смежные вопросы