<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">Hi all, and those explicitly addressed,<br>
      <br>
      first of all, I'm happy that my talk worked quite ok, and that
      Guido<br>
      reacted very positively on the idea of making it pip-installable,<br>
      including virtualenv.<br>
      <br>
      Of course we are cheating quite a bit, because stackless is not<br>
      really a package, but suffers that little wart of "being an
      executable after all".<br>
      <br>
      And today, I heard the talk of Mark Shannon which was just great.<br>
      I'm sitting in the shadow at the conference, let the impressions<br>
      flow, and try to get something sorted out.<br>
      <br>
      On Stackless PyPy:<br>
      ----------------<br>
      <br>
      Yes, special care must be taken to at least pretend that we have
      simple<br>
      packages, although we don't.<br>
      <br>
      For instance, as you said, having PyPy installed and then with a
      configured<br>
      dependency of stackless-python, something like this will probable
      happen<br>
      right now (but I'm not sure how much checking stackless does right
      now?)<br>
      <br>
      I guess, pypy running "pip install stackless-python" should right
      now reject<br>
      installation, since there is no stackless binary built for PyPy.<br>
      <br>
      I would imagine that, if done right, pypy running "pip install
      stackless-python"<br>
      should figure out that on PyPy, this only means to at most ensure
      that the PyPy<br>
      installation is able to "import stackless". If that works, then
      PyPy was built with<br>
      stackless support. Right now this is in some broken/unready state,
      but will be<br>
      working, pretty soon.<br>
      <br>
      On HotPy and Stackless<br>
      ---------------------<br>
      <br>
      As far as I understood Mark Shannon today, in some private chat
      during lunch, HotPy<br>
      does some changes to the obvious modules, like ceval.c (heavily),
      typeobject.c<br>
      and probably other kernel-related stuff (traceback, pystate etc.).<br>
      I will need a closer look how these changes are made, and how
      feasible it is<br>
      to add a stackless version. I would like to implant the idea right
      now and early<br>
      enough. Right now I'm even wondering if HotPy is maybe better
      suited to<br>
      implement stackless features than CPython itself, because HotPy
      does in the<br>
      first place, what Stackless achieves painfully via crazy tricks:
      Make CPython tail-recursive.<br>
      So I have the gut feeling that Stackless-Hotpy could become a new
      and possibly simpler<br>
      branch, because all the hairy changes that are needed are already
      in HotPy.<br>
      <br>
      But this still is Vodoo.<br>
      <br>
      In any case, I would like to encourage everybody to look into
      HotPy and what<br>
      we can do for it to thrive! It is a really nice improvement to
      CPython and can become<br>
      a valid alternative for  people who cannot use PyPy right now.<br>
      HotPy needs support, committers, repository, community, all of
      that. And note<br>
      that Guido is interested in it.<br>
      I'm interested to contribute. Of course, I want it to have a
      stackless option in every<br>
      Python flavor.<br>
      <br>
      <br>
      General thoughts on PIP and the future:<br>
      ----------------------------------<br>
      <br>
      I think the PIP approach to simplify stackless is very valid,
      although it has<br>
      its subleties, like "not scaling well". This can be improved and
      better supported<br>
      later. I think it is important, and to do it right now, to state a
      fact. We then get into<br>
      a better position, not asking for something to be included
      somewhere, but to<br>
      show that we have a pip installer, which puts us into a better
      position.<br>
      <br>
      This kind of installation does not scale well, because if somebody
      does a<br>
      "pip install HotPy" after "pip install stackless-python", (s)he
      will loose stackless.<br>
      A better installer would need to know about these combinations and
      to draw<br>
      the appropriate decision when detecting an existing stackless. It
      would need<br>
      to download/unpack/build a stackless-enabled HotPy version (and
      the right one),<br>
      instead of failing.<br>
      I think that could also have some impact on how easy_install and
      distribute<br>
      are developed further, since today this would not work at all.<br>
      <br>
      In any case, there _are_ certain projects that need a common way
      to collaborate<br>
      and give the user a hassle-free experience, as if they just were
      simple<br>
      packages. We need to support the useful and valid combination of
      that and<br>
      pretend composability to some extent.<br>
      <br>
      I think by doing so, we can avoid what happened to Stackless for
      so many years:<br>
      A niche-existence, where people were reluctant to try it.<br>
      <br>
      So in some sense, my idea is to start some "umbrella" project,
      that gives smaller<br>
      projects that need to change the interpreter binary a better
      position. There is<br>
      no longer every other single project in some concurrence with
      CPython.<br>
      I guess nobody ever wanted that. By doing a combined effort, we
      instead<br>
      would gain a positive, collaborative attitude:<br>
      We all love CPython, and you get your choices to select what you
      are<br>
      specially interested in. That is where I want to go.<br>
      <br>
      Right now the choices seem to be<br>
      HotPy<br>
      Stackless<br>
      PyPy   (maybe, to some extent)<br>
      <br>
      but I'm open do discuss what else could go into this list.<br>
      <br>
      <br>
      Umbrella-Project<br>
      ============<br>
      <br>
      Question:<br>
      ---------<br>
      <br>
      Should we come up with an umbrella project on BitBucket, for
      instance<br>
      <br>
         "alternative-python"  or  "special-python"<br>
      <br>
      which then has<br>
      <br>
        - an installer project<br>
        - HotPy<br>
        - stackless<br>
        - pypy (concerning setup issues)<br>
        - (more proposals?)<br>
      <br>
      as repositories?<br>
      <br>
      Then this project would have its own mailing list and issue
      tracker, and a couple<br>
      of submitters.<br>
      <br>
      I would certainly like to be in this, as I'm interested in every
      aspect of Python<br>
      and how to support improvements in any direction.<br>
      <br>
      Q: would Jython fit into this picture as well?<br>
      <br>
      Please let me know your thoughts.<br>
      I'm sitting at EuroPython, Florence including Friday and maybe
      Sat. evening.<br>
      Contact me by email or find me at the conference.<br>
      Let's talk!<br>
      <br>
      Cheers -- Chris<br>
      <br>
      <br>
      On 7/5/12 12:29 AM, Hervé Coatanhay wrote:<br>
    </div>
    <blockquote
cite="mid:CAPq7H1ZKBETRQd+TKA9Tso1e5crGyd4cWN6z3PPCndmaOA-Oow@mail.gmail.com"
      type="cite">Hi all,
      <div><br>
      </div>
      <div>I was wondering. Now that `stackless-python` is like any
        other pypi package on a pip perspective, what will/should happen
        if I want to use a package that has `stackless-python` as a
        dependency in a pypy virtualenv ?</div>
      <div><br>
      </div>
      <div>cheers,</div>
      <div>Hervé<br>
        <div class="gmail_quote">On Thu, Jun 28, 2012 at 8:42 PM,
          Christian Tismer <span dir="ltr"><<a
              moz-do-not-send="true" href="mailto:tismer@stackless.com"
              target="_blank">tismer@stackless.com</a>></span> wrote:<br>
          <blockquote class="gmail_quote" style="margin:0 0 0
            .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Stefan,
            <div class="im"><br>
              <br>
              On 6/28/12 5:37 PM, Stefan Drees wrote:<br>
              <blockquote class="gmail_quote" style="margin:0 0 0
                .8ex;border-left:1px #ccc solid;padding-left:1ex">
                Hi Chris,<br>
                <br>
                Am 28.06.12 16:51, Christian Tismer wrote (slightly
                edited):<br>
                <blockquote class="gmail_quote" style="margin:0 0 0
                  .8ex;border-left:1px #ccc solid;padding-left:1ex">
                  ...<br>
                  Stackless becomes a PyPI package that contains only
                  the binary and the<br>
                  few changed library modules.<br>
                  After<br>
                           pip install stackless-python<br>
                  <br>
                  you have stackless inside site-packages, and you get a
                  message that<br>
                  tells you<br>
                  <br>
                           "Along-side with pythonX.Y, you now have a
                  command<br>
                            slpythonX.Y which you can run as an
                  alternative"<br>
                  <br>
                  and you can also<br>
                  <br>
                           pip uninstall stackless-python<br>
                </blockquote>
                > ...<br>
                <br>
                to me this sounds good enough for easing the people into
                wanting to try stackless out.<br>
                <br>
                Maybe a different name for the modified python eg.
                matching the package name from the install command
                stackless-python, stackless-python2.7 etc?<br>
              </blockquote>
              <br>
            </div>
            Possible. The name "stackless-python" was proposed in a
            parallel<br>
            discussion on the virtualenv list. Maybe it is better to use
            a shorter<br>
            name since I assume some laziness if people need this
            package<br>
            at all ;-)<br>
            <br>
            But there are many packages with a name different from what
            gets<br>
            installed - for instance distribute, which is cheating, it
            just replaces<br>
            the easy-install package with a different version.
            <div class="im"><br>
              <blockquote class="gmail_quote" style="margin:0 0 0
                .8ex;border-left:1px #ccc solid;padding-left:1ex">
                <br>
                I share the view, that a virtualenv is and should
                allways be an additional option, transparent for the
                package.<br>
              </blockquote>
              <br>
            </div>
            Yes. I thought things would be easier abusing virtualenv,
            but that<br>
            seems to be not true.<br>
            <br>
            So I ended up with a "piggy-back stackless".<br>
            <br>
            Btw., I am still playing with wild ideas, like on "import
            stackless"<br>
            replacing and restarting the interpreter completely...or
            some other tricks<br>
            that emulate an extension.<br>
            But it is not trivial without a mechanism to intercept the
            normal<br>
            startup-code of cpython.<br>
            <br>
            Mayme I'll keep it simple and get somewhere at all ;-)<br>
            <br>
            cheers -- chris
            <div class="HOEnZb">
              <div class="h5"><br>
                <br>
                -- <br>
                Christian Tismer             :^)   <mailto:<a
                  moz-do-not-send="true"
                  href="mailto:tismer@stackless.com" target="_blank">tismer@stackless.com</a>><br>
                tismerysoft GmbH             :     Have a break! Take a
                ride on Python's<br>
                Karl-Liebknecht-Str. 121     :    *Starship* <a
                  moz-do-not-send="true"
                  href="http://starship.python.net/" target="_blank">http://starship.python.net/</a><br>
                14482 Potsdam                :     PGP key -> <a
                  moz-do-not-send="true" href="http://pgp.uni-mainz.de"
                  target="_blank">http://pgp.uni-mainz.de</a><br>
                work <a moz-do-not-send="true"
                  href="tel:%2B49%20173%2024%2018%20776"
                  value="+491732418776" target="_blank">+49 173 24 18
                  776</a>  mobile <a moz-do-not-send="true"
                  href="tel:%2B49%20173%2024%2018%20776"
                  value="+491732418776" target="_blank">+49 173 24 18
                  776</a>  fax n.a.<br>
                PGP 0x57F3BF04       9064 F4E1 D754 C2FF 1619  305B C09C
                5A3B 57F3 BF04<br>
                      whom do you want to sponsor today?   <a
                  moz-do-not-send="true"
                  href="http://www.stackless.com/" target="_blank">http://www.stackless.com/</a><br>
                <br>
                <br>
                _______________________________________________<br>
                Stackless mailing list<br>
                <a moz-do-not-send="true"
                  href="mailto:Stackless@stackless.com" target="_blank">Stackless@stackless.com</a><br>
                <a moz-do-not-send="true"
                  href="http://www.stackless.com/mailman/listinfo/stackless"
                  target="_blank">http://www.stackless.com/mailman/listinfo/stackless</a><br>
              </div>
            </div>
          </blockquote>
        </div>
        <br>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
Stackless mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Stackless@stackless.com">Stackless@stackless.com</a>
<a class="moz-txt-link-freetext" href="http://www.stackless.com/mailman/listinfo/stackless">http://www.stackless.com/mailman/listinfo/stackless</a></pre>
    </blockquote>
    <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>
tismerysoft GmbH             :     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>
work +49 173 24 18 776  mobile +49 173 24 18 776  fax n.a.
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>