2009-12-11 12 views

Respuesta

0

¿Qué tan similar tiene que ser? eval obras de clojure en las listas, así que:

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

Sé acerca de eval, pero no creo que funcione para mí. Realmente quiero evaluar una "Cadena" –

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

probablemente no debería necesitar para hacer esto. Las macros y fns hacen innecesario este tipo de cosas el 99% del tiempo. Esto es bastante frágil, y puede no ser seguro si estas cadenas provienen de la entrada del usuario, y así sucesivamente.

+1

Bueno, quiero hacer algo radicalmente inseguro: un chatbot REPL. –

+0

Hay un clojurebot en #clojure. –

+8

load-string hace exactamente lo que está buscando – Abhijith

Cuestiones relacionadas