> It's undocumented in http://clojure.org/reader. What is its name? What
> does it precisely do?

It's "EvalReader". What it does is cause the expression to be  
evaluated at read time:

user=> (read-string "(+ 5 #=(* 9 9))")
(+ 5 81)

You can prevent this occurring by binding *read-eval*:

user=> (binding [*read-eval* false] (read-string "(+ 5 #=(* 9 9))"))
java.lang.RuntimeException: java.lang.Exception: EvalReader not  
allowed when *read-eval* is false. (NO_SOURCE_FILE:0)

-R



--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to