Re: a basic bytecode to machine code compiler

2011-04-02 Thread Chris Colbert
> > > That's quite an interesting idea. I do think a lot of production Python > code implicitly depends on the GIL and would need rework for multicore. > For example, code that expects "n += 1" to be atomic, because the > CPython bytecode interpreter won't switch threads in the middle of it. > --

Re: a basic bytecode to machine code compiler

2011-04-02 Thread Robert Kern
On 4/2/11 2:05 PM, John Nagle wrote: There's no easy way to speed up Python; that's been tried. It needs either a very, very elaborate JIT system, more complex than the ones for Java or Self, or some language restrictions. The main restriction I would impose is to provide a call that says: "OK,

Re: a basic bytecode to machine code compiler

2011-04-02 Thread Paul Rubin
John Nagle writes: > There's no easy way to speed up Python; that's been tried. > It needs either a very, very elaborate JIT system, more complex > than the ones for Java or Self, or some language restrictions. Is it worse than Javascript? Tracemonkey and its descendants produce pretty fast

Re: a basic bytecode to machine code compiler

2011-04-02 Thread Dan Stromberg
On Sat, Apr 2, 2011 at 12:05 PM, John Nagle wrote: > On 4/2/2011 3:30 AM, Stefan Behnel wrote: > >> Cython actually supports most Python language features now (including >> generators in the development branch), both from Python 2 and Python 3. >> Chances are that the next release will actually c

Re: a basic bytecode to machine code compiler

2011-04-02 Thread John Nagle
On 4/2/2011 3:30 AM, Stefan Behnel wrote: Cython actually supports most Python language features now (including generators in the development branch), both from Python 2 and Python 3. Chances are that the next release will actually compile most of your Python code unchanged, or only with minor ad

Re: a basic bytecode to machine code compiler

2011-04-02 Thread Stefan Behnel
Steven D'Aprano, 02.04.2011 12:04: On Fri, 01 Apr 2011 17:45:39 +0200, Stefan Behnel wrote: Steven D'Aprano, 01.04.2011 14:57: I suggest you check out the competitors: Shedskin is a Python to C++ compiler; Psyco is a JIT specialising compiler; Nuitka claims to be a C++ implementation that com

Re: a basic bytecode to machine code compiler

2011-04-02 Thread Steven D'Aprano
On Fri, 01 Apr 2011 17:45:39 +0200, Stefan Behnel wrote: > Steven D'Aprano, 01.04.2011 14:57: >> I suggest you check out the competitors: >> >> Shedskin is a Python to C++ compiler; Psyco is a JIT specialising >> compiler; Nuitka claims to be a C++ implementation that compiles to >> machine code;

Re: a basic bytecode to machine code compiler

2011-04-01 Thread Rouslan Korneychuk
Thanks for all the replies. I wasn't aware of some of these alternatives. Most of these seem to transform Python code/bytecode into another language. I was already well aware of Cython. On the Nuitka blog, I notice it says "Compiling takes a lot [sic] time, ...". Compyler seems to generate asse

Re: a basic bytecode to machine code compiler

2011-04-01 Thread Stefan Behnel
Steven D'Aprano, 01.04.2011 14:57: I suggest you check out the competitors: Shedskin is a Python to C++ compiler; Psyco is a JIT specialising compiler; Nuitka claims to be a C++ implementation that compiles to machine code; Berp claims to be a Haskell implementation that does the same; Compyler

Re: a basic bytecode to machine code compiler

2011-04-01 Thread Steven D'Aprano
On Thu, 31 Mar 2011 18:33:36 -0400, Rouslan Korneychuk wrote: > I'm aware that PyPy already has a working JIT compiler, but I figure it > will be a long time before they have a version of Python that is ready > for everybody to use, so this could be useful in the mean time. PyPy is ready to use *

Re: a basic bytecode to machine code compiler

2011-03-31 Thread Dan Stromberg
On Thu, Mar 31, 2011 at 5:52 PM, Terry Reedy wrote: > On 3/31/2011 6:33 PM, Rouslan Korneychuk wrote: > >> I was looking at the list of bytecode instructions that Python uses and >> I noticed how much it looked like assembly. So I figured it can't be to >> hard to convert this to actual machine c

Re: a basic bytecode to machine code compiler

2011-03-31 Thread Terry Reedy
On 3/31/2011 6:33 PM, Rouslan Korneychuk wrote: I was looking at the list of bytecode instructions that Python uses and I noticed how much it looked like assembly. So I figured it can't be to hard to convert this to actual machine code, to get at least a small boost in speed. And so I whipped up

Re: a basic bytecode to machine code compiler

2011-03-31 Thread Stefan Behnel
Rouslan Korneychuk, 01.04.2011 00:33: I was looking at the list of bytecode instructions that Python uses and I noticed how much it looked like assembly. So I figured it can't be to hard to convert this to actual machine code, to get at least a small boost in speed. I think I recall having read

a basic bytecode to machine code compiler

2011-03-31 Thread Rouslan Korneychuk
I was looking at the list of bytecode instructions that Python uses and I noticed how much it looked like assembly. So I figured it can't be to hard to convert this to actual machine code, to get at least a small boost in speed. And so I whipped up a proof of concept, available at https://git