Hey Carl, Carl Friedrich Bolz wrote:
> I thought I would start a new thread for discussing what PyPy needs to > become "production ready" (whatever that is) and succeed as a Python > implementation. This is something were outside opinions are very welcome > (of course there is no guarantee we can implement all of your wishes :-) > ). Thanks for starting this discussion. Happy to see it! > Obvious problems are: > - some missing extension modules of the stdlib. no clue which of them > are really important, depends on the application you want to run, I > guess. This can be worked on by outsiders. > > - lack of 3rd-party extension-module support. This is hard to change. > Once we implement ctypes the problem will be mitigated, but not > solved: it's no fun at all to wrap a large C++ library with ctypes, > and there are lot's of existing non-ctypes based modules out there. Yes, this one would be a major challenge. If you can crack it and the PyPy interpreter offers another benefit (an obvious one is speed), you will be in awesome position. If not, the other benefits will have to weigh more strongly. This is definitely one to evolve slowly over time if it's possible at all. > - Speed. The JIT is still not in a state where it really speeds up > arbitrary Python code. I expect this to change sooner or later. > However, it's not an area were a lot of people can help. > > - for PyPy-JVM: bindings to allow the interaction with arbitrary Java > libraries, threading support Does this already exist for PyPy-CLR? - An easy starting point. I'd say one other important point is to have an easy starting point. I.e. Joe Random Hacker can install the PyPy interpreter and get started without a lot of hassle. Of course if the benefits outweigh the installation hassle people will still install it, but you'll limit your audience. It's not that hard now of course: creating new interpreters is just a matter of waiting a long time. I also heard you were working on an online PyPy build system, but I'm not sure what the status of this is. Still, things like Windows installers and inclusion in Linux distributions (or at least making packages available for them) will eventually be of great value. Generally, for any version of PyPy, there are questions like stability and memory usage. - Stability. Stability is obvious: we'll find out a lot more on how stable things are once production-use ramps up. I suspect PyPy is a in a good position due to the way interpreters are generated. - Memory usage. Memory usage is related to performance. If a PyPy interpreter is faster than CPython but uses up vasts amounts of memory (especially if it seems to leak), that'll be a problem. I know there's a lot of work being done on garbage collection. I don't really know what the expected outcome is here. :) - Release management. Don't underestimate the matter of release management. I like my foundational software to have a pattern of regular releases, and I think many other developers share this with me. I can't do production development on some SVN trunk. I need the foundation to be stable and unchanging, unless I explicitly change it. If there are major bugs, I'd expect a quick bugfix release. Doing a proper release can be quite a bit of effort, and needs people that feel responsible to do this rather frustrating and boring work. The CPython project does this well. Regards, Martijn _______________________________________________ [email protected] http://codespeak.net/mailman/listinfo/pypy-dev
