Ah! Special form! Got it! Thank you! >From the fourth paragraph: "If the second operand is a list, or args are supplied, it is taken to be a method call. The first element of the list must be a simple symbol, and the name of the method is the name of the symbol. ..."
That was bugging me. And I learned some more about java interop special form. Thanks! On Friday, July 24, 2015 at 9:43:29 AM UTC-5, Bobby Eickhoff wrote: > > eval isn't calling itself, it's calling the method Compiler#eval. (defn > eval ...) binds the function to a var named eval, but (. > clojure.lang.Compiler (eval form)) is invoking a static method. See the dot > special form docs > <http://clojure.org/java_interop#Java+Interop-The+Dot+special+form>. > > On Friday, July 24, 2015 at 10:27:52 AM UTC-4, SteveSuehs wrote: >> >> I am looking at the source for clojure's core eval function. It appears >> to recursively call itself. Is the eval used to call a method on compiler >> not the same eval? How is this not infinitely recursive? Is something lazy >> here? >> >> Links: >> * Clojure eval >> https://github.com/clojure/clojure/blob/bdc752a7fefff5e63e0847836ae5e6d95f971c37/src/clj/clojure/core.clj >> * Compiler >> https://github.com/clojure/clojure/blob/master/src/jvm/clojure/lang/Compiler.java >> >> Thanks! >> -Steve >> > -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.