The Clojure community might find this article interesting. http://www.dalnefre.com/wp/2011/11/fexpr-the-ultimate-lambda
He points out that Fexpr is more primitive (in the sense of "simple") than Lambda. Fexpr decouples the operand access from the operand evaluation allowing more detailed control. (Fexpr is an old MacLisp term.) Given an s-expression there is always a question of what the symbols mean. The meaning is supplied by the environment, of which there are many. For instance, there is a dynamic environment (runtime call), the static environment (the value at the time the text is written), the macro environment, etc. See chapter 2 of Lisp in Small Pieces for a really in-depth discussion. It is hair-hurting discussions like this that make lisp so much more interesting than other languages. There isn't a way to express the concepts in other languages. Tim Daly "There is no such thing as a *simple* job" :-) -- 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