Pythonista for Python 3.x.
Are there any plans to release a Python 3.x variant of Pythonista?
I am also a newbie, learning Python for a Bioinformatics Algorithms course. They reccommened Python 3, so that's what I started with. I'd be happy to pay again for a Pythonista 3 version, too. The cost is not a big issue if it works.
I'm also greedy for a python 3 version :-)
It's clear that python 3 is the future (and present) and python 2.7 is the past (and present).
At sometime the transition time will be almost over and everybody will use python 3, except for some legacy stuff.
Archlinux has python3 as default, fedora and ubuntu will follow next year.
Because we are in a transition time, a newbie needs to deal with this topic at the moment.
As long as he doesn't needs a library wich only is supported in python 2.7 it would be a bad idea to start a new project in python 2.7.
So I hope that after the big ios 7 update, python 3 is next for pythonista :-)
I don't mind to have two pythonista version in the appstore. A python newbie needs to be confronted with this version stuff, at the moment.
Or your could make an in-app purchase for python 3, and later on at some time you can switch to python 3 as the default a make python 2 an in app purchase.
In pythonista you could have to separate workspaces and environments one for python 2 and one for python 3.
Python 3 is now five years old!! https://mail.python.org/pipermail/python-dev/2013-December/130673.html
+1 for python 3.
please make it happen.
i also like the idea of an in app purchase.
I would be happy to pay all over again to get Python 3.
My guess would be that a single app that supports both Python 2 and 3 would be too big and confusing both for the developer and the user.
Remember that Python has all those "batteries included" standard library modules as well as extensive documentation so it would be a big executable. The current Pythonista is already a 40MB download from the App Store. Size matters but there is also the confusion factor...
The standard libraries are often the same but sometimes subtly different between Python 2 and Python 3. How does the user specify whether a particular script should be run as P2 or P3? What about text typed into the command line interpreter? Context sensitive help has a similar problem: Does help display the routine from the P2 docs or the P3 docs? Also, for the developer it is confusing to build and test all bugs in both P2 and in P3 in the same build. As bug reports come in, are the for P2 or P3, etc.
If OMZ were to dare to take on Python 3 then I would gladly purchase the new product from the App Store because it would be a very serious investment of his time and focus to deliver a great Python 3 to iOS developers.
For a cautionary tale about divided focus, see another Python app for iOS that put out 8 different versions of their Python app before abandoning its community at the beginning of this year. It is better to have a single great Pythonista that is updated and supported than divide focus too early.
New year! New hope for a python 3 version of pythonista :-)
@omz some new thoughts about this topic?
Given that Python PEP 373 projects that Python 2.7.9 will be released in May 2015 and that Python PEP 404 makes clear that there will never be a Python v2.8, there are just one more year of Python 2 bug fixes. NOTE: This EOL deadline was later extended 5 additional years to 2020 as discussed later in this thread.
Given all the progress that the community has made on Python 3, it would be good to see Pythonista move forward to Python 3 as well.
I believe all the included third-party modules should now support Python 3, so they should no longer be a hold up.
With Python 3.4 now out and 2.7 approaching EOL (final maintenance release planned next year), I think it's a good time to start moving on to Python 3. Python 3 first came out in 2008 and is now the the default language for most new projects. All important libraries that one would want on Pythonista are available on Python 3, or have superior replacements available on Python 3. Switching to Python 3 will make it easier for those that are running Python 3 on the desktop.
The switch is inevitable and Python 3 has been out for 5.5 years now. It's time to move forward,
There's always 'Python 3.3 for iOS' which is $3 or 'Pythoni3.3' which is free.
Gonna put my word in. I don't really need Python 3, but it may be pretty nice to have Pythonista support Py3. Maybe you can make it so users can switch, which language they want to use (in one program), thought it might be pretty hard. Or (I think a better way) you can release another Pythonista for Py3. And yea, as ungaa said, Py3 was out for a Pretty Long Time...
I agree with ShadowSlayer that two separate apps woulde be most practical.
I am very well willing to pay for a Python 3.4 version.
When can we expect a new version (2.7 or 3.0)?
Python 2 End Of Life extended until 2020!! http://hg.python.org/peps/rev/76d43e52d978
Personally, I believe this is not a good idea because it will further slow Python 3 adoption. However, I do understand the pressure to go even slower than molasses.
Honestly my preference would be for a single app containing both 2.7 and 3.4, with a preference setting for which interpreter and lib directory gets used at startup. Yes, I'd have to pay for the extra 30+MB of iOS storage to hold that redundancy, but it means there's just one app, and it becomes possible (with an app restart potentially) to switch back and forth as needed.
Also I would happily pay $20 for Pythonista.
For those of us on slow "broadband" lines a double-sized binary would not be that welcome. I would think a separate app, with the old one disappearing over time and stabilised somewhere in between, would be best.
Honestly my preference would be for a single app containing both 2.7 and 3.4, with a preference setting for which interpreter and lib directory gets used at startup.
As I said before, this is technically not possible on iOS. The size of the app is not a factor here, but it has to be a single binary (statically linked) which wouldn't work with two different versions of Python.
To be more precise, it would technically be possible, but it requires dynamic linking, which is definitely not allowed by Apple. There is absolutely no chance this would get through review.
I haven't read the whole of this thread so I'm not sure if it's been raised already but is there any reason why you can't have a single 2.7 distribution and a 3.4 version that's only available via an IAP. It's a separate app but not one that's publicly available on the App Store. I recently looked into Python training courses at a number of UK colleges for a client of mine and they're still teaching 2.7 in the main but making students available ref the changes/differences/benefits of 3.4.
I'd expect that a good number of Ole's customers pick up Pythonista as a learning tool because is the superb built in documentation. With this being the case it's probably best if the main distribution mirrors what people are being taught in college. I'm not averse to two separate versions being available but it could prove very confusing for Python beginners so I fully understand and appreciate Ole's stance on this so far.
I haven't read the whole of this thread so I'm not sure if it's been raised already but is there any reason why you can't have a single 2.7 distribution and a 3.4 version that's only available via an IAP.
It's stated several places in this thread and others on the site that yes, there's a reason why he can't do Python 2.x and 3.x in the same app: iOS apps are required to contain a single executable with no dynamic libraries, and the two versions of Python would collide if they were not separate libraries (can't compile both into the same executable). We'd all love to have it, but it can't practically happen. (Uh, maybe with major hacking on both Python codebases, but it'd be sort of a Frankenstein-ian job of rewiring two brains to one body.)
The alternatives are: a) no Python 3.x ever; b) have a flag day and switch the app over to Python 3.x, dropping Python 2.x support - leaving a bunch of existing users scrambling; or c) release a Python 3.x version in parallel to the Python 2.x version.
Personally, since the next versions of Pythonista and Editorial are going to involve some radical changes anyway, I'd vote for making them "Pythonista2" and "Editorial2", with Python 3.x (only), and keep the existing versions around in maintenance mode.
Personally, since the next versions of Pythonista and Editorial are going to involve some radical changes anyway, I'd vote for making them "Pythonista2" and "Editorial2", with Python 3.x (only), and keep the existing versions around in maintenance mode
I would disagree with this as I still believe a version of Pythonista that supports 2.7 should be publicly available and this strategy will mean that only those that already own Pythonista will be able to access a version that supports Python 2.7. As I stated above, I understand and agree with Ole's fears about confusing potential new customers with two separate versions of Pythonista being available on the App Store (especially to those who are new to programming).
And to clarify my question above, I understand that the Pythonista app can't have both 2.7 and 3.4 Python distributions in the same app. My question was whether an IAP can direct the user to a fresh download that isn't publicly available. It's more a question of App Store policy as most IAP's I've encountered effectively switch on content/modules within an existing App.
In any case you'd call them Pythonista3 and Editorial3. :-)
Personally I wonder why @omz would continue with Pythonista now that Editorial is well established. Is there something I'm missing here?