2014-02-12 5:18 GMT+01:00 t x <txrev...@gmail.com>: > > If no such evaluator exists, where is the complexity of a > clojure-in-clojure evaluator that I failed to mention above? >
Clojure is a compiled language. This means that even if you leave out any platform issues like bytecode generation, there is still an analysis phase separate from evaluation. The most visible effect of this in terms of language semantics is, that every name in a given piece of code has to be fully resolved (to a lexical binding, a namespace var or a class) when it is analyzed/compiled, before evaluation can begin. Thus the need for declare in case of circular call graphs. That's not to say that a clojure analyzer and interpreter couldn't fit on 2-3 pages of code (depending on your page size and choice of font :-). I believe the CLJS analyzer isn't that much larger (or used not to be, anyway). cheers -- 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/groups/opt_out.