<html><body><div style="color:#000; background-color:#fff; font-family:times new roman, new york, times, serif;font-size:12pt"><div id="yiv4324985319"><div><div style="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); font-family: 'times new roman', 'new york', times, serif; font-size: 12pt;"><div id="yiv4324985319yui_3_7_2_46_1379797929414_55"><font color="#454545" face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:12px;" id="yiv4324985319yui_3_7_2_46_1379797929414_137">Hi Jeff:</span></font><br style="color:rgb(69, 69, 69);font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:12px;"><br><span style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px; color: rgb(69, 69, 69);" id="yiv4324985319yui_3_7_2_46_1379797929414_105">Message: 1</span><br style="color: rgb(69, 69, 69); font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px;"><span style="font-family:
 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px; color: rgb(69, 69, 69);" id="yiv4324985319yui_3_7_2_46_1379797929414_102">Date: Fri, 20 Sep 2013 09:34:00 -0400</span><br style="color: rgb(69, 69, 69); font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px;"><span style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px; color: rgb(69, 69, 69);" id="yiv4324985319yui_3_7_2_46_1379797929414_142">From: Jeff Senn <</span><a rel="nofollow" ymailto="mailto:senn@maya.com" target="_blank" href="mailto:senn@maya.com" id="yiv4324985319yui_3_7_2_1_1379797929414_2750" style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px; color: rgb(40, 98, 197); outline: 0px;">senn@maya.com</a><span style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px; color: rgb(69, 69, 69);">></span><br style="color: rgb(69, 69, 69); font-family: 'Helvetica Neue',
 Helvetica, Arial, sans-serif; font-size: 12px;"><span style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px; color: rgb(69, 69, 69);" id="yiv4324985319yui_3_7_2_46_1379797929414_97">To: The Stackless Python Mailing List <</span><a rel="nofollow" ymailto="mailto:stackless@stackless.com" target="_blank" href="mailto:stackless@stackless.com" style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px; color: rgb(40, 98, 197); outline: 0px;">stackless@stackless.com</a><span style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px; color: rgb(69, 69, 69);">></span><br style="color: rgb(69, 69, 69); font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px;"><span style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px; color: rgb(69, 69, 69);" id="yiv4324985319yui_3_7_2_46_1379797929414_94">Subject: Re: [Stackless] Why can't I
 use nanosleep() to suspend the</span><br style="color: rgb(69, 69, 69); font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px;"><span style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px; color: rgb(69, 69, 69);" id="yiv4324985319yui_3_7_2_46_1379797929414_91">    execution of a stackless tasklet?</span><br style="color: rgb(69, 69, 69); font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px;"><span style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px; color: rgb(69, 69, 69);" id="yiv4324985319yui_3_7_2_46_1379797929414_145">Message-ID: <</span><a rel="nofollow" ymailto="mailto:B6E9FAC6-DF3F-4899-8DB9-62FEADA747EC@maya.com" target="_blank" href="mailto:B6E9FAC6-DF3F-4899-8DB9-62FEADA747EC@maya.com" style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px; color: rgb(40, 98, 197); outline: 0px;"
 id="yiv4324985319yui_3_7_2_46_1379797929414_88">B6E9FAC6-DF3F-4899-8DB9-62FEADA747EC@maya.com</a><span style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px; color: rgb(69, 69, 69);">></span><br style="color: rgb(69, 69, 69); font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px;"><span style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px; color: rgb(69, 69, 69);" id="yiv4324985319yui_3_7_2_46_1379797929414_85">Content-Type: text/plain; charset="iso-8859-1"</span><span style="color: rgb(69, 69, 69); font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px;" id="yiv4324985319yui_3_7_2_46_1379797929414_151"> </span><span style="color: rgb(69, 69, 69); font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px;"> </span><br><br style="color: rgb(69, 69, 69); font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
 font-size: 12px;"><span style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px; color: rgb(69, 69, 69);" id="yiv4324985319yui_3_7_2_46_1379797929414_79">>I envy your life in the "future", my friend. I am living in a pragmatically CPython 2.x world, and probably</span><br style="color: rgb(69, 69, 69); font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px;"><span style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px; color: rgb(69, 69, 69);" id="yiv4324985319yui_3_7_2_46_1379797929414_76">>will be for a long time... :-) </span><br style="color: rgb(69, 69, 69); font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px;" id="yiv4324985319yui_3_7_2_46_1379797929414_124"></div><div style="font-family: 'times new roman', 'new york', times, serif; font-size: 12pt;" id="yiv4324985319yui_3_7_2_46_1379797929414_148"><br></div><div
 style="font-family:'times new roman', 'new york', times, serif;font-size:12pt;" id="yiv4324985319yui_3_7_2_46_1379797929414_148" class="yui_3_7_2_40_1379882872476_87">Right now living in the "future" requires a lot of legwork in the present. Outside reviewing my  STM book and getting static-stm-barrier branch to build on my tiny computers, I have to come up with working hypothesis about how Stackless works on top of STM. I believe we can take clues from concurrency/STM in Haskell. An immediate concern is that transaction.py assumes the units of execution are threads not tasklets. I am guessing to get around this will entails me having a far better understanding of how continuelets and stacklets (this is what PyPy uses for microthreading) interact with OS threads.</div><div style="font-family:'times new roman', 'new york', times, serif;font-size:12pt;" id="yiv4324985319yui_3_7_2_46_1379797929414_148"
 class="yui_3_7_2_40_1379882872476_87"><br></div><div style="font-family:'times new roman', 'new york', times, serif;font-size:12pt;" id="yiv4324985319yui_3_7_2_46_1379797929414_148" class="yui_3_7_2_40_1379882872476_87">Cheers,</div><div style="font-family:'times new roman', 'new york', times, serif;font-size:12pt;" id="yiv4324985319yui_3_7_2_46_1379797929414_148" class="yui_3_7_2_40_1379882872476_87">Andrew</div><div style="font-family:'times new roman', 'new york', times, serif;font-size:12pt;" id="yiv4324985319yui_3_7_2_46_1379797929414_148" class="yui_3_7_2_40_1379882872476_87"><br></div><div style="font-family:'times new roman', 'new york', times, serif;font-size:12pt;" id="yiv4324985319yui_3_7_2_46_1379797929414_148" class="yui_3_7_2_40_1379882872476_87"><br></div><div style="font-family:'times new roman', 'new york', times, serif;font-size:12pt;" id="yiv4324985319yui_3_7_2_46_1379797929414_148" class="yui_3_7_2_40_1379882872476_87"><br></div> 
 </div></div></div></div></body></html>