Hi.

On Mar 23, 2011, at 8:31 AM, VPeric wrote:

> Hello,
> 
> I'm a student at the Faculty of Electrical Engineering, Czech
> Technical University in Prague. I'm studying Open Informatics, which
> is a study program orientated towards research and the utilization of
> new technologies.
> 
> While I have experience with several languages (notably C, Java,
> Prolog), Python is by far my favorite language. I find the issues
> related to conversion to Python 3 particularly interesting, and would
> like to work on porting SymPy to Python 3. The porting is inevitable
> if SymPy is to survive, and doing it sooner rather than later offers
> advantages that could be helpful in increased adoption (and hence
> increased development), so I consider it a very worthwhile pursuit.
> 
> My main problem is whether this is simply "big enough" for a GSoC
> project? While it is listed on the Ideas page, after a cursory glance
> at the code I don't see any major problems here (or I simply missed
> them, of course). I have read about the last time such a conversion
> was attempted and the problems encountered, but as that was over 18
> months ago, I believe most of those problems can be solved now.
> 
> My plan would be to first run in 2.6 with no errors (ie. "Python -3"),
> which shouldn't be too difficult (around 150 errors, most of which
> look trivial), and then try to maintain a dual codebase with automatic
> running of the 2to3 tool when building for Python3 (which is the
> recommended procedure). Problems might arise from the fact that SymPy
> currently supports Python 2.4 or higher, but this would have to be
> solved as it comes up. I hope it will be possible to keep supporting
> 2.4, though limiting it to 2.6 would likely result in cleaner code.
> 
> Thank you for your time,
> Vladimir Perić

So we are planning on dropping 2.4 support after the next release (see 
http://code.google.com/p/sympy/issues/detail?id=2135).  This should make it 
much easier to support Python 3 (indeed, it is already difficult to support 
Python 2.4 without supporting Python 3).  We do plan on keeping Python 2.5 
support into the future, though.

Maybe others can comment on whether they think this is a suitable project or 
not.  Previously, there were quite a few things that needed to be done for 
Python 3 support, but many of them have already been fixed.  Definitely one 
thing that needs to be done is to automate as much as possible the process of 
handling Python 3 code.  We do not want to have two separate code bases, so the 
best way would be if we could just code in Python 2 like we do now and have 
everything transferred over to Python 3 automatically.  Another thing that 
should be considered is setting up buildbots that automatically run the tests 
in all versions of Python (including Python 3) to make sure everything is 
running OK.

So I think you would have to consider a Python 3 project to be less about 
fixing the code base to work with Python 3 (which should not take very long), 
and more about making it as painless as possible for us to support it.

Aaron Meurer

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sympy?hl=en.

Reply via email to