I'm a programming newbie in most respects, and have always programmed small programs in a single thread. But I'm interested in concurrent programming and have been very interested in the various generator-based approaches. Perhaps someone should write an article on: 1. The advantages/disadvantages between true threads and the microthread approach (i.e. like the Nanothread module from the LGT project), and 2. A list of the different microthread modules out there and their limitations. From a newbie point of view, the microthread approach seems like a holy grail (i.e. speed; deterministic results avoiding race conditions, etc.), but maybe I just don't understand what it can't do.