Re: What books have helped you wrap your brain around FP and Clojure?

2009-06-08 Thread dulanov

Just see http://en.wikibooks.org/wiki/Clojure_Programming/Further_Reading

On Jun 6, 3:12 pm, Robert Campbell rrc...@gmail.com wrote:
 Going beyond the language-specific Programming Clojure book, what
 other books have best helped you make the (sometimes mind-bending)
 transition from OOP thinking to FP thinking? My bookshelf is piled
 high with OOP books like Design Patterns, Domain Driven Design,
 Analysis Patterns, etc. I've recently ordered:

 - Concepts, Techniques, and Models of Computer Programming (mentioned
 on this/compojure's list)
 - Structure and Interpretation of Computer Programs (highly
 recommended on Stackoverflow, lectures posted online)

 Any others?

--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



Re: What books have helped you wrap your brain around FP and Clojure?

2009-06-08 Thread Nathan Hawkins

Programming Erlang is also good. The syntax and message passing
emphasis aren't relevant to Clojure, but Erlang also uses immutable
data, and is definitely a functional language.

On Sat, 6 Jun 2009 13:12:16 +0200
Robert Campbell rrc...@gmail.com wrote:

 
 Going beyond the language-specific Programming Clojure book, what
 other books have best helped you make the (sometimes mind-bending)
 transition from OOP thinking to FP thinking? My bookshelf is piled
 high with OOP books like Design Patterns, Domain Driven Design,
 Analysis Patterns, etc. I've recently ordered:
 
 - Concepts, Techniques, and Models of Computer Programming (mentioned
 on this/compojure's list)
 - Structure and Interpretation of Computer Programs (highly
 recommended on Stackoverflow, lectures posted online)
 
 Any others?
 
  

--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



Re: What books have helped you wrap your brain around FP and Clojure?

2009-06-08 Thread Daniel Lyons


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 Lyons
http://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
-~--~~~~--~~--~--~---



Re: What books have helped you wrap your brain around FP and Clojure?

2009-06-08 Thread Daniel Jomphe

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
-~--~~~~--~~--~--~---



Re: What books have helped you wrap your brain around FP and Clojure?

2009-06-07 Thread Danny Woods

+1 for Higher Order Perl.  The author, Mark Jason Dominus, has made
the book available for free download at http://hop.perl.plover.com/book/.

Cheers,
Danny.

--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



Re: What books have helped you wrap your brain around FP and Clojure?

2009-06-07 Thread Stuart Sierra

On Jun 6, 7:12 am, Robert Campbell rrc...@gmail.com wrote:
 Going beyond the language-specific Programming Clojure book, what
 other books have best helped you make the (sometimes mind-bending)
 transition from OOP thinking to FP thinking?

Practical Common Lisp, on the web at http://gigamonkeys.com/book/
Clojure borrows the good bits of CL.

SICP is available online too, http://mitpress.mit.edu/sicp/

-Stuart Sierra
--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



What books have helped you wrap your brain around FP and Clojure?

2009-06-06 Thread Robert Campbell

Going beyond the language-specific Programming Clojure book, what
other books have best helped you make the (sometimes mind-bending)
transition from OOP thinking to FP thinking? My bookshelf is piled
high with OOP books like Design Patterns, Domain Driven Design,
Analysis Patterns, etc. I've recently ordered:

- Concepts, Techniques, and Models of Computer Programming (mentioned
on this/compojure's list)
- Structure and Interpretation of Computer Programs (highly
recommended on Stackoverflow, lectures posted online)

Any others?

--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



Re: What books have helped you wrap your brain around FP and Clojure?

2009-06-06 Thread Robert Campbell

Talk about bad timing - reading the Silly question from Programming
Clojure it looks like a book thread already got started there. Here
were some additional mentions:

Laurent PETIT: OOSC: Object Oriented Software Construction, but this
is OOP so I'm disinclined to include it for this specific list
Paul Stadig: Concepts of Programming Languages by Sebesta, suggested
as more general than SICP


On Sat, Jun 6, 2009 at 1:12 PM, Robert Campbellrrc...@gmail.com wrote:
 Going beyond the language-specific Programming Clojure book, what
 other books have best helped you make the (sometimes mind-bending)
 transition from OOP thinking to FP thinking? My bookshelf is piled
 high with OOP books like Design Patterns, Domain Driven Design,
 Analysis Patterns, etc. I've recently ordered:

 - Concepts, Techniques, and Models of Computer Programming (mentioned
 on this/compojure's list)
 - Structure and Interpretation of Computer Programs (highly
 recommended on Stackoverflow, lectures posted online)

 Any others?


--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



Re: What books have helped you wrap your brain around FP and Clojure?

2009-06-06 Thread Vincent Foley

I recommend The Little Schemer and if you want to go further, The
Seasoned Schemer.

On Jun 6, 7:12 am, Robert Campbell rrc...@gmail.com wrote:
 Going beyond the language-specific Programming Clojure book, what
 other books have best helped you make the (sometimes mind-bending)
 transition from OOP thinking to FP thinking? My bookshelf is piled
 high with OOP books like Design Patterns, Domain Driven Design,
 Analysis Patterns, etc. I've recently ordered:

 - Concepts, Techniques, and Models of Computer Programming (mentioned
 on this/compojure's list)
 - Structure and Interpretation of Computer Programs (highly
 recommended on Stackoverflow, lectures posted online)

 Any others?
--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



Re: What books have helped you wrap your brain around FP and Clojure?

2009-06-06 Thread CuppoJava

As messy of a language it is, learning Ruby was the final step needed
to show me the philosophy and merits of FP.
  -Patrick
--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



Re: What books have helped you wrap your brain around FP and Clojure?

2009-06-06 Thread Nathan Hawkins

Higher Order Perl. While I don't want to use Perl anymore, I do know it 
very well, and it provided a good introduction to FP in a more familiar 
language. YMMV.

Robert Campbell wrote:
 Going beyond the language-specific Programming Clojure book, what
 other books have best helped you make the (sometimes mind-bending)
 transition from OOP thinking to FP thinking? My bookshelf is piled
 high with OOP books like Design Patterns, Domain Driven Design,
 Analysis Patterns, etc. I've recently ordered:

 - Concepts, Techniques, and Models of Computer Programming (mentioned
 on this/compojure's list)
 - Structure and Interpretation of Computer Programs (highly
 recommended on Stackoverflow, lectures posted online)

 Any others?

 
   


--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



Re: What books have helped you wrap your brain around FP and Clojure?

2009-06-06 Thread kyle smith

I read Norvig's PAIP.  The concept of first defining a dsl and then
writing an interpreter/compiler for it is amazing.  Even something as
simple as his sentence grammar shows the idea.
--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



Re: What books have helped you wrap your brain around FP and Clojure?

2009-06-06 Thread Daniel Lyons

I recommend Purely Functional Data Structures by Chris Okasaki. If  
you can get your hands on OCaml for Scientists it's pretty good too.  
And of course The Little Lisper/Schemer. I haven't made it through my  
copy of SICP or PAIP.

-- 
Daniel

On Jun 6, 2009, at 10:26 AM, kyle smith the1physic...@gmail.com wrote:


 I read Norvig's PAIP.  The concept of first defining a dsl and then
 writing an interpreter/compiler for it is amazing.  Even something as
 simple as his sentence grammar shows the idea.
 

--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



Re: What books have helped you wrap your brain around FP and Clojure?

2009-06-06 Thread prhlava

 Going beyond the language-specific Programming Clojure book, what
 other books have best helped you make the (sometimes mind-bending)

I have not yet read anything more mind-bending than this:

http://www.gp-field-guide.org.uk/

(A field guide to genetic programming)

It is free download - the book is under Creative Commons license...

A clojure example of the above is at:

http://npcontemplation.blogspot.com/2009/01/clojure-genetic-mona-lisa-problem-in.html

(but the code did not work in the latest clojure for me)

Kind regards,

Vlad

PS: Apart from being a fascinating subject - the book made the code
is data idea obvious...
--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---



Re: What books have helped you wrap your brain around FP and Clojure?

2009-06-06 Thread Matt Revelle

It may help to review the code and structure of open source Clojure
projects, part of the mind-bend feeling could be coming from
struggling to know where to begin when writing code and less from
unfamiliarity with the theory of FP.

I'd also recommend playing with Haskell and reviewing Real World
Haskell (http://book.realworldhaskell.org/).  Even though Clojure has
a focus on FP, other Lisps don't exhibit this; there are bits of FP
that can be found in any programming language but with Haskell you'll
be immersed in it.

On Jun 6, 4:10 pm, Daniel Lyons fus...@storytotell.org wrote:
 I recommend Purely Functional Data Structures by Chris Okasaki. If  
 you can get your hands on OCaml for Scientists it's pretty good too.  
 And of course The Little Lisper/Schemer. I haven't made it through my  
 copy of SICP or PAIP.

 --
 Daniel

 On Jun 6, 2009, at 10:26 AM, kyle smith the1physic...@gmail.com wrote:





  I read Norvig's PAIP.  The concept of first defining a dsl and then
  writing an interpreter/compiler for it is amazing.  Even something as
  simple as his sentence grammar shows the idea.
--~--~-~--~~~---~--~~
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
-~--~~~~--~~--~--~---