<div dir="ltr"><div><div><div>There is CL-STM.  I haven't tried it, though, and know little about it.<br><br></div>If you do find a good STM library, you'll want a functional collections library to go with it.  This is for the same reason that Clojure uses functional collections: you don't want to have to go outside the STM framework to update collection-valued slots of objects.  Permit me to suggest FSet: <a href="http://common-lisp.net/project/fset/">http://common-lisp.net/project/fset/</a><br>
<br></div>It is Quicklisp-loadable: (ql:quickload "fset")<br><br></div>-- Scott<br><br></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Dec 20, 2013 at 9:32 AM, Paul Tarvydas <span dir="ltr"><<a href="mailto:paultarvydas@gmail.com" target="_blank">paultarvydas@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
I'm about to look into Software Transactional Memory techniques for some financial code I'm involved with.  Any advice about which libraries to look at (and why) would be quite welcome.<br>
<br>
Thanks<span class="HOEnZb"><font color="#888888"><br>
pt<br>
<br>
<br>
</font></span></blockquote></div><br></div>