<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">On 16.04.13 23:35, Carlos Eduardo de
      Paula wrote:<br>
    </div>
    <blockquote
cite="mid:CADnnUqeG3Rx=CbDys3Ft_Bfa-ZeMvc4-iPPkUKZnX=WhT2H_+g@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div class="gmail_default" style="font-family:'trebuchet
          ms',sans-serif;font-size:small">Hello everyone,</div>
        <div class="gmail_default" style="font-family:'trebuchet
          ms',sans-serif;font-size:small">
          <br>
        </div>
        <div class="gmail_default" style="font-family:'trebuchet
          ms',sans-serif;font-size:small">I've been following the PyPy
          progress for some time and recently saw that PyPy 2.0
          (currently in beta2) already supports Stackless features
          integrated with the JIT so it can have good performance using
          both features.</div>
        <div class="gmail_default" style="font-family:'trebuchet
          ms',sans-serif;font-size:small"><br>
        </div>
        <div class="gmail_default" style="font-family:'trebuchet
          ms',sans-serif;font-size:small">I tested a couple scripts I
          had and most of them works. The ones that does not work are
          related to recursion but my tests are far from comprehensive.</div>
        <div class="gmail_default" style="font-family:'trebuchet
          ms',sans-serif;font-size:small"><br>
        </div>
        <div class="gmail_default" style="font-family:'trebuchet
          ms',sans-serif;font-size:small">I see this as good news since
          PyPy progress has been great in the last years.</div>
        <div class="gmail_default" style="font-family:'trebuchet
          ms',sans-serif;font-size:small"><br>
        </div>
        <div class="gmail_default" style="font-family:'trebuchet
          ms',sans-serif;font-size:small"><a moz-do-not-send="true"
            href="http://doc.pypy.org/en/latest/release-2.0.0-beta2.html">http://doc.pypy.org/en/latest/release-2.0.0-beta2.html</a><br>
        </div>
        <div class="gmail_default" style="font-family:'trebuchet
          ms',sans-serif;font-size:small"><br>
        </div>
      </div>
    </blockquote>
    <br>
    Hi Carlos,<br>
    <br>
    no wonder that you get problems with recursion.<br>
    PyPy's support for Stackless is usable for concurrency, but<br>
    different, since PyPy never adopted the way Stackless avoids the<br>
    Stack and with no "soft-switching".<br>
    <br>
    It is more like greenlets that led to the tealet which is meanwhile<br>
    a stacklet (based upon the continulet...), but effectively the stack<br>
    is still in use.<br>
    <br>
    The difference is a bit hard to explain:<br>
    <br>
    In Stackless, the pickleable program state needs collaborative
    multitasking,<br>
    and this happens in all cases where no stack is in the way.<br>
    When "hard-switching" is done, the piece of stack to move around is
    an opaque<br>
    structure that we cannot inspect and pickle, yet.<br>
    <br>
    In PyPy, no "soft-switching" ever occurs, it all looks more like
    "hard-switching",<br>
    i.E. the interpreter is forced into another context by stack
    copying.<br>
    But in contrast to Stackless, because all existing structures come
    from<br>
    PyPy, even those structures can be introspected and (theoretycally)<br>
    pickled. I'm not sure if that is implemented, yet.<br>
    <br>
    You can read more about Stackless features in PyPy here:<br>
    <a class="moz-txt-link-freetext" href="http://doc.pypy.org/en/latest/stackless.html">http://doc.pypy.org/en/latest/stackless.html</a><br>
    <br>
    cheers - chris<br>
    <br>
    <pre class="moz-signature" cols="72">-- 
Christian Tismer             :^)   <a class="moz-txt-link-rfc2396E" href="mailto:tismer@stackless.com"><mailto:tismer@stackless.com></a>
Software Consulting          :     Have a break! Take a ride on Python's
Karl-Liebknecht-Str. 121     :    *Starship* <a class="moz-txt-link-freetext" href="http://starship.python.net/">http://starship.python.net/</a>
14482 Potsdam                :     PGP key -> <a class="moz-txt-link-freetext" href="http://pgp.uni-mainz.de">http://pgp.uni-mainz.de</a>
phone +49 173 24 18 776  fax +49 (30) 700143-0023
PGP 0x57F3BF04       9064 F4E1 D754 C2FF 1619  305B C09C 5A3B 57F3 BF04
      whom do you want to sponsor today?   <a class="moz-txt-link-freetext" href="http://www.stackless.com/">http://www.stackless.com/</a></pre>
  </body>
</html>