OK, I guess the essence is: Why does Clojure not need retry or orElse when another implementer of STM considers them essential? I'm guessing it's because clojures in MVCC but would like confirmation and perhaps links to comparisons between STMs and maybe a guide to Clojures.
How would you solve the Santa Claus Problem in Clojure? I suggested watchers might be a good idea but am curious what others would do. The original paper has a 2 page description of the problem if the version I linked to is too verbose for people, http://www.crsr.net/files/ANewExerciseInConcurrency.pdf Cheers, Tom On 16 February 2013 17:13, vemv <v...@vemv.net> wrote: > You can increase the chances of generating discussion by boiling down both > the relevant content of paper and your program to a minimal, self-contained > form. > > Cheers - Victor > > > On Friday, February 15, 2013 4:05:09 PM UTC+1, thattommyhall wrote: >> >> A few months ago I reread Simon Peyton Joneses article on STM in the >> Beautiful Code book and decided to try and translate it into clojures >> STM >> >> See the paper here http://research.microsoft.com/pubs/74063/beautiful.pdf >> >> He says 'Atomic blocks as we have introduced them so far are utterly >> inadequate to coordinate concurrent programs. They lack two key >> facilities: blocking and choice' so I guess the implication is >> Clojures STM is inferior, any thoughts? >> >> I had to use a constraint on a ref and try/catch to get the same >> effect (though I hate using exceptions for control flow it does seem >> to work) >> >> >> https://github.com/thattommyhall/santa-claus/blob/master/src/santa/core.clj >> >> I think a better solution might be had using watchers, how would you do >> it? >> Any good links explaining differences in the STMs? >> >> Cheers, >> Tom > > -- > -- > 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. > > -- -- 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.