Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

py2c - an open source Python to C/C++ is looking for developers

1,138 views
Skip to first unread message

manian...@gmail.com

unread,
Jul 30, 2012, 9:27:04 AM7/30/12
to
I created py2c ( http://code.google.com/p/py2c )- an open source Python to C/C++ translator!
py2c is looking for developers!
To join create a posting in the py2c-discuss Google Group or email me!
Thanks
PS:I hope this is the appropiate group for this message.

andrea crotti

unread,
Jul 30, 2012, 11:08:39 AM7/30/12
to manian...@gmail.com, pytho...@python.org
2012/7/30 <manian...@gmail.com>:
> --
> http://mail.python.org/mailman/listinfo/python-list

It looks like a very very hard task, and really useful or for exercise?

The first few lines I've seen there are the dangerous * imports and
LazyStrin looks like a typo..

from ast import *
import functools
from c_types import *
from lazystring import *
#constant data
empty = LazyStrin
ordertuple = ((Or,),(And

MaxTheMouse

unread,
Jul 30, 2012, 12:42:24 PM7/30/12
to
On Jul 30, 7:27 am, maniandra...@gmail.com wrote:
> I created py2c (http://code.google.com/p/py2c)- an open source Python to C/C++ translator!
> py2c is looking for developers!
> To join create a posting in the py2c-discuss Google Group or email me!
> Thanks
> PS:I hope this is the appropiate group for this message.

Out of curiosity.
What is the difference between this and Shedskin? Shedskin being a
(restricted) python-to-C++ compiler. (http://code.google.com/p/
shedskin/) Is the goal to be able to handle any python code or a
subset?

Cheers,
Adam

alex23

unread,
Jul 30, 2012, 8:16:32 PM7/30/12
to
On Jul 31, 2:42 am, MaxTheMouse <maxthemo...@googlemail.com> wrote:
> What is the difference between this and Shedskin? Shedskin being a
> (restricted) python-to-C++ compiler. (http://code.google.com/p/
> shedskin/) Is the goal to be able to handle any python code or a
> subset?

There's also Nuitka, which is an unrestricted compiler, I believe:
http://nuitka.net/pages/overview.html

Is this a completely independent project, or are there plans to
leverage off of PyPy's toolchain, for example?

Stefan Behnel

unread,
Jul 31, 2012, 1:23:54 AM7/31/12
to pytho...@python.org
alex23, 31.07.2012 02:16:
> On Jul 31, 2:42 am, MaxTheMouse wrote:
>> What is the difference between this and Shedskin? Shedskin being a
>> (restricted) python-to-C++ compiler. (http://code.google.com/p/
>> shedskin/) Is the goal to be able to handle any python code or a
>> subset?
>
> There's also Nuitka, which is an unrestricted compiler, I believe:
> http://nuitka.net/pages/overview.html

Not to forget Cython, which is the only Python-to-C compiler that is in
widespread use.


> Is this a completely independent project, or are there plans to
> leverage off of PyPy's toolchain, for example?

>From a look at the source code, it seems hard to bring it together with
anything. It looks very monolithic.

Stefan

Stefan Behnel

unread,
Jul 31, 2012, 8:46:27 AM7/31/12
to pytho...@python.org
Stefan Behnel, 31.07.2012 07:23:
> From a look at the source code, it seems hard to bring it together with
> anything. It looks very monolithic.

Hmm, sorry, I mixed it up with "2c.py", which is yet another of those
Python-to-C compilers with an all too similar name.

https://code.google.com/p/2c-python/

There are a couple of others here:

http://wiki.python.org/moin/PythonImplementations

Seeing the number of those compilers, almost none of which is commonly used
and/or still alive as a project, the question really is: why another one?

I mean, it's totally fine as a hobby educational project, sure, and I
really don't want to discourage anyone from going through this to have fun.

But apart from "just for fun", what is the goal that would make this
particular compiler different from the others? And also different enough to
merit its own source base, instead of basing it on one of the existing
projects? I don't consider "source is harder to read than to write" a good
answer to this in general.

Stefan

Ramchandra Apte

unread,
Sep 1, 2012, 11:15:19 PM9/1/12
to pytho...@python.org
It converts to *pure* C/C++ *without* using Python or its API so that it can be the same speed as C/C++

Ramchandra Apte

unread,
Sep 1, 2012, 11:15:19 PM9/1/12
to comp.lan...@googlegroups.com, pytho...@python.org
On Tuesday, 31 July 2012 18:16:27 UTC+5:30, Stefan Behnel wrote:

Michael Torrie

unread,
Sep 2, 2012, 1:27:58 AM9/2/12
to pytho...@python.org
On 09/01/2012 09:15 PM, Ramchandra Apte wrote:
> It converts to *pure* C/C++ *without* using Python or its API so that it can be the same speed as C/C++

Sounds like a fun project for you. I hope you learn a lot doing it.
That's reason enough for it. Do you plan to port all the standard
python modules as well, though? Because Python modules, both in the
standard library and third-party, are the main reasons that I use
python. For example, PyGTK. Python is a great glue language. Since it
can seamlessly interact with C and be extended in C, speed has never
really been an issue for me.

Ramchandra Apte

unread,
Sep 2, 2012, 2:10:59 AM9/2/12
to pytho...@python.org
>That's reason enough for it. Do you plan to port all the standard
python modules as well, though?

Well, it should be quite easy because most of the _modules are either C accelerator (which there is no need to port) or a C wrapper (which should be trivial to port)

Ramchandra Apte

unread,
Sep 2, 2012, 2:10:59 AM9/2/12
to comp.lan...@googlegroups.com, pytho...@python.org
>That's reason enough for it. Do you plan to port all the standard
python modules as well, though?

Ramchandra Apte

unread,
Sep 2, 2012, 2:16:15 AM9/2/12
to pytho...@python.org
I am writing py2c for my OS written in Python (planned) .
>Sounds like a fun project for you.
More fun with more developers. (I need developers)

Ramchandra Apte

unread,
Sep 2, 2012, 2:16:15 AM9/2/12
to comp.lan...@googlegroups.com, pytho...@python.org
On Sunday, 2 September 2012 11:18:38 UTC+5:30, Michael Torrie wrote:
I am writing py2c for my OS written in Python (planned) .
>Sounds like a fun project for you.

Stefan Behnel

unread,
Sep 2, 2012, 2:27:14 AM9/2/12
to pytho...@python.org
Ramchandra Apte, 02.09.2012 08:10:
>> That's reason enough for it. Do you plan to port all the standard
> python modules as well, though?
>
> Well, it should be quite easy because most of the _modules are either C accelerator (which there is no need to port) or a C wrapper (which should be trivial to port)

Nope, not at all. They use the CPython C-API internally, so in order to
port them, you'll have to reimplement that first. That's a huge amount of
work, as proven by the incompleteness of all other Python implementations
in that regard. If you think you can do better here then IronPython or
PyPy, please go ahead.

Stefan


Serhiy Storchaka

unread,
Sep 2, 2012, 3:23:15 AM9/2/12
to pytho...@python.org
On 02.09.12 06:15, Ramchandra Apte wrote:
> It converts to *pure* C/C++ *without* using Python or its API so that it can be the same speed as C/C++

How is it implemented long integers?

Mark Lawrence

unread,
Sep 2, 2012, 4:43:31 AM9/2/12
to pytho...@python.org
Your earlier quote "Well, it should be quite easy because most of the
_modules are either C accelerator (which there is no need to port) or a
C wrapper (which should be trivial to port)" means that I won't be
touching the project with a 10 foot long disinfected barge pole.

--
Cheers.

Mark Lawrence.

Ramchandra Apte

unread,
Sep 2, 2012, 9:46:36 AM9/2/12
to pytho...@python.org
py2c has been just started (long integer multiplacation might use the Python internal multiplication code) (it uses the karatsuba algorithm)

Ramchandra Apte

unread,
Sep 2, 2012, 9:46:36 AM9/2/12
to comp.lan...@googlegroups.com, pytho...@python.org
On Sunday, 2 September 2012 12:53:35 UTC+5:30, Serhiy Storchaka wrote:

sira...@gmail.com

unread,
Jan 9, 2015, 4:25:02 AM1/9/15
to
this is actually a great project, because i see a lot of programmers embedding the whole python into their c++ application even the python compiler and all its libraries. and i hope this could solve that problem one day... look what matlab did matlab to C/C++ which is great and what python was missing was that feature. python is so good for algorithm development and c/c++ is so easy for machines to execute.
Message has been deleted
0 new messages