I second most of the book suggestions already mentioned (those that I've read).
If you like reading papers, I strongly suggest you take a look at "Can Programming Be Liberated from the von Neumann Style?": http://www.stanford.edu/class/cs242/readings/backus.pdf This paper will help you with two things: 1. Motivation to investigate deeper FP; 2. Understanding many core concepts of FP. If you read this paper, I strongly suggest you schedule some time to read at least the first 12 pages of his lecture. The first 7 pages will shed out more light on what’s wrong with imperative languages; then, the next pages will explain how a language can be implemented on top of a very small number of sound and simple concepts that can be used and powerfully combined in all sorts of natural ways to describe computations. (Although it could be argued that some of this paper's ideas go even further than our current FP languages do, they won't hinder your understanding at all.) If you'd like to read about Backus' contribution to our field, I think these are the best links: http://en.wikipedia.org/wiki/John_Backus http://theory.stanford.edu/~aiken/other/backus.pdf http://www-03.ibm.com/ibm/history/exhibits/builders/builders_backus.html Another paper which helped me understand FP in relation with maths is "Recursion Equations As A Programming Language". Last time I checked (Jan.), this paper was still not freely available on the web; but you can read most of its message through Google Books. It's a much easier read than Backus, but less complete; nonetheless, it's really, really highly recommended because it's complementary. Next, I've seen the following mentioned in quite a few places, and I think the general opinion is that it's also high-quality stuff. I'm yet to read it. "Why Functional Programming Matters": http://www.cs.chalmers.se/~rjmh/Papers/whyfp.html Now, one might argue these papers' goal is more to introduce/motivate FP over traditional imperative programming. I would oppose to this that in order to back FP, these papers need to explain FP in very powerful terms for people; thus, they are great reads for the problem at hand. On Jun 8, 11:10 am, Daniel Lyons <fus...@storytotell.org> wrote: > On Jun 8, 2009, at 7:24 AM, Nathan Hawkins wrote: > > > The syntax and message passing emphasis aren't relevant to Clojure > > I don't have any experience with agents in Clojure, but I wonder if > they be used to similar effect? Agents seem more like data in another > thread to me than self-recursive functions in another thread, which is > what Erlang's processes are like, but your remark piques my curiosity. > Can one be implemented trivially via the other? > > — > Daniel Lyonshttp://www.storytotell.org-- Tell It! --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---