== Link: Threads Cannot be Implemented as a Library I've already linked to this [[in passing ../tech/ExplainingThreadPopularity]], but I'm going to rerun it as an explicit link. [[Threads Cannot be Implemented as a Library http://www.hpl.hp.com/techreports/2004/HPL-2004-209.html]] by Hans Boehm makes the argument in its title: > We provide specific arguments that a pure library approach, in which > the compiler is designed independently of threading issues, cannot > guarantee correctness of the resulting code. There is also a discussion of this paper at [[Lambda the Ultimate http://lambda-the-ultimate.org/node/950]] that may be interesting reading. On a quick skim of the LtU discussion thread, [[this Usenet article http://groups.google.com/group/comp.programming.threads/msg/9ceaee0e94f8f3ba?hl=en]] jumps out as a useful summary of the entire _volatile_ and multiprocessor programming issue, ending up with the conclusion that using _volatile_ is both unnecessary and harmful in shared-state concurrent programming.