Re:PyPy 1.7 released: widening the sweet spot
by dripton on Monday November 21, 2011 @09:22PM
(#3263768)
3 hours? You're doing something wrong. I just built PyPy in 49 minutes on a $99 3 GHz Phenom II.
Re:PyPy 1.7 released: widening the sweet spot
by obtu on Tuesday November 22, 2011 @06:41AM
(#3265106)
You probably have more RAM?
Re:PyPy 1.7 released: widening the sweet spot
by _mrc on Monday November 21, 2011 @08:16PM
(#3263582)
Why the downvotes? I find this analysis useful. Is it incorrect?
Re:PyPy 1.7 released: widening the sweet spot
by fijal on Tuesday November 22, 2011 @01:30AM
(#3264388)
Yes, 3+ hours sounds incorrect. Also, it's not like KDE builds in 15 minutes either. I don't see how a long build time makes the project immature, feel free to suggest the connection.
Re:PyPy 1.7 released: widening the sweet spot
by MostAwesomeDude on Tuesday November 22, 2011 @12:17AM
(#3264206)
The build is very all-or-nothing in its code analysis. Feel free to suggest ways to make this incremental -- the code isn't compiled per-module like C-style languages.
The C API is not something you should target. Write pure Python instead of C extensions. If you're wrapping a C API, use Cython, which mostly stays within the boundaries of sanity (and might someday grow a ctypes target). Most of the C API (for certain values of "most") is only a recompile away.
Which obscure UNIX flavor did you need supported? The biggest obstacle to supporting other platforms is a lack of buildslaves and people well-versed in those platforms.
In particular, the build process is really painful (3+ hours on a high-end Xeon workstation) and quite immature.
I was particularly annoyed to discover that the build process isn't incremental -- if it fails for any reason, you get to start all over again.
The CPython extension support is also still very experimental (that is, if you have any Python extension modules written in C, be prepared for a lot of fun getting them to work).
PyPy also doesn't support anywhere near the number of OS platforms that Python does natively. It's very much a Linux, Mac, or Windows thing only. And it's heavily focused on x86 if you want to use the JIT version.