This is fantastic! Thank you! I learned a good deal reading it just now. Comments below:

On 10/06/2013 04:30 PM, David T. Pierson wrote:
1) Should it be broken into separate pages?
I'd leave it as a single page for now.  Easier to update.
2) It starts out with the basics of threads.  Is this too trivial to cover?
Please keep that part.  It gives the reader confidence.
3) There are lots of ways to synchronize Racket threads.  I try to cover them
broadly, but don't really delve into which ones are best.  Parts seem like
they are just restating information from the reference.  Should there be more
prescriptive text?
I think the text you have is good already. The Guide and Reference are going to repeat some information, which is good. Your page offers a quick overview, which is perfect for the Guide. It would be nice to have a prescriptive sentence for each feature giving some guidance on when to use which, but I don't have the experience to write those.
4) Some of the examples feel clumsy.  Contriving concurrency examples
that are both simple and meaningful was hard.  I'm not sure I succeeded.
They are better than nothing!

make-arithmetic-thread is missing a "(let loop ()" line. Later in the same example "(match" should be "(match item".

In the channel example, could you have the worker threads return some text when they are done? It makes running the example clearer. I don't understand the note below this example about the lack of synchronization. I don't see how that can happen, can you explain it to me?

Even after reading the reference on wrap-evt and handle-evt, I don't understand when I would use wrap-evt. It seems like handle-evt is better? For the guide, I suggest cutting the wrap-evt example, and only show handle-evt.

Thanks,
Dave

_________________________
 Racket Developers list:
 http://lists.racket-lang.org/dev

Reply via email to