Out of curiosity, what languages do you use at work? I was surprised recently to find that there are STM libraries of varying degrees of maturity for a lot more languages than I thought. Most of them feel bolted on, of course, but there might be something.<p>Personally, I think that <i>hardware</i> transactional memory can't come fast enough. We're already seeing a basic form of it on Sun's to-be-released Rock processor, but there are much more advanced types of HTM that have been developed in the past few years. With hardware support, the performance penalty of using transactional memory pretty much evaporates. The hardware doesn't have to be too terribly elaborate, either.