Hey Stuart,

Thanks for the response.

What I'm trying to do is keep each chapter focussed on an approach, rather than 
a language. For example, in the chapter on Actors, I'll be showing examples in 
Scala, but the discussion won't be (I hope!) particularly Scala-specific. I 
hope to leave the reader with general lessons which could be applied to Scala, 
Erlang, or any other language with Actor support. Similarly, when talking about 
Threads and Locks, I'll be showing examples in Java, but the lessons should be 
equally applicable to C/C++, etc.

I completely take your point about Clojure's approach being a great deal more 
than STM. I guess that I chose STM as the title because it's got visibility - 
people are talking about it, and there will be an expectation on the part of 
the reader that any book that covers concurrency will spend some time talking 
about it.

I'd be very interested to hear any suggestions for an alternative chapter 
title. I guess what best sums up Clojure's approach is that it separates state 
from identity - but "Separating State from Identity" isn't exactly pithy, and I 
fear won't mean much at first glance to most readers.

--
paul.butcher->msgCount++

Snetterton, Castle Combe, Cadwell Park...
Who says I have a one track mind?

http://www.paulbutcher.com/
LinkedIn: http://www.linkedin.com/in/paulbutcher
MSN: p...@paulbutcher.com
AIM: paulrabutcher
Skype: paulrabutcher

On 11 Dec 2012, at 19:41, Stuart Halloway <stuart.hallo...@gmail.com> wrote:

> Hi Paul,
> 
> If it isn't too late to change your chapter title, I would encourage 
> emphasizing Clojure's model of references and values in general, and the 
> option of implementing a variety of different reference semantics that all 
> conform to the same basic API shape.
> 
> That general approach has been game-changing for me, and the STM occupies a 
> rather small niche in the overall space.
> 
> Datomic stores the entire database in an atom (not an STM ref), and updates 
> it with a call to swap!  It is literally no more complex than a trivial 
> hackneyed book example. :-)
> 
> Cheers,
> Stu
> 
> 
> 
> On Sun, Dec 2, 2012 at 11:03 AM, Paul Butcher <p...@paulbutcher.com> wrote:
> All,
> 
> I have a request which I hope the members of this group are uniquely 
> positioned to help with. I have recently started working on a new book for 
> The Pragmatic Programmers with the working title "Seven Concurrency Models in 
> Seven Weeks" (it follows on from their existing "Seven Languages" and "Seven 
> Databases" titles).
> 
> One of the approaches that I'll be covering is STM, and I'll be presenting it 
> in Clojure.
> 
> What I'd like to solicit are "war stories" about problems you've solved using 
> STM, which demonstrate the strengths of the technique over and above (say) 
> threads and locks.
> 
> I'm looking for real-world examples instead of presenting yet another 
> hackneyed atomically-make-a-bank-account-withdrawal :-)
> 
> Very many thanks in advance for your help!
> 
> --
> paul.butcher->msgCount++
> 
> Snetterton, Castle Combe, Cadwell Park...
> Who says I have a one track mind?
> 
> http://www.paulbutcher.com/
> LinkedIn: http://www.linkedin.com/in/paulbutcher
> MSN: p...@paulbutcher.com
> AIM: paulrabutcher
> Skype: paulrabutcher
> 
> 
> -- 
> 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 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 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

Reply via email to