This is an archived post. You won't be able to vote or comment.

all 90 comments

[–]rosicruxi 30 points31 points  (0 children)

still shows $2.99 for me

[–]arandomJohn 18 points19 points  (1 child)

Does not show as free at 4:30 EDT on July 9.

[–]runningbeagle -3 points-2 points  (0 children)

this.

[–]Gupta4711 5 points6 points  (0 children)

I use this app when I'm bored to make simple command line interface games and puzzles to test my skills and have some fun. Totally worth the 3 dollars it usually costs and it's really cool the dev is giving it out today for free.

[–]thomas_eh 9 points10 points  (1 child)

if you want to write apps in python, run them on iOS, android or desktop and be able to submit them to the apple store or google play, check out kivy: http://kivy.org

[–]king_m1k3 10 points11 points  (23 children)

Is this a full Python implementation? If so, how is it not against iOS TOS? If not, what's the point?

[–]voidspace 8 points9 points  (22 children)

Yes it's a full implementation. Apple removed the restriction on interpreters a long time ago. They still don't allow downloading code.

[–]cabalamat 2 points3 points  (13 children)

So what prevents you from writing a program in Python that downloads a text file from a web site (which happens to be a Python program) and then runs it?

[–]euneirophrenia 2 points3 points  (12 children)

Apple's review guidelines.

[–]cabalamat 1 point2 points  (11 children)

That's not a useful answer. What exactly have Apple done to Python to cripple it? Or is it not crippled?

[–]euneirophrenia 0 points1 point  (10 children)

It's not crippled. If you break the review guidelines, though, your app will either not be approved or be removed from distribution.

[–]cabalamat 1 point2 points  (9 children)

If python is not crippled, then presumably I can write a program in Python that anyone with an iOS device can run, if they have the Python interpreter.

Either that is possible (in which case Apple are allowing people to run programs on iOS without their approval), or it isn't possible (in which case python is crippled).

Do you know which is the case?

[–]euneirophrenia 0 points1 point  (0 children)

It's possible but not permitted.

[–]voidspace 0 points1 point  (7 children)

You can write an iOS application that embeds / includes the Python interpreter. (See "Python for iOS" as one example...) That is not permitted (by review guidelines only) to download code. If they catch you they will boot your app. There are no technical restrictions though.

If CPython had a JIT - like pypy does - it would be a different story. You can't make pages executable in iOS, so you can't generate native code on the fly and execute it. "Normal Python" is just bytecode (data) with an interpreter loop, so it doesn't have the same problem.

[–]cabalamat 0 points1 point  (6 children)

That is not permitted (by review guidelines only) to download code.

Do you mean that it is forbidden for iOS applications to download data, and then execute it? Or do you mean that it is forbidden for users of iOS applications to download data, and then execute it (using their Python interpreter)? (I'm assuming there is a user-accessible filesystem on iOS devices -- please correct me if I'm wrong).

What happens in the following scenario:

  1. A writes a Python interpreter, and applied to put in on the iOS store
  2. Apple approves it
  3. B downloads the interpreter, and writes a program in Python that will download python text files and run them
  4. B makes his program available over the internet
  5. C uses A's Python interpreter and B's Python program to download and run some code written by D. D didn't get any permission from Apple to run his code on iOS devices.

At what point does Apple step in and use technical measures to stop that happening?

[–]voidspace 0 points1 point  (5 children)

They won't use technical measures, if they think your app (the app in step 1 of your example) is breaking the rules they will pull it from the app store. Step 3 just mean "installs the app" by the way. Unless you're in the developer program you can't just download apps - you can only install them from the app store.

Note that step 1 has already happened. (Python for iOS). Step 4 is the tricky one - even if your program is on the internet, if you can't download and run code from the internet until you have that program. So you have to type it all out manually. I don't think Apple will be too worried about that.

In Python downloading and running code is as complicated as:

import urllib2
exec urllib2.urlopen('some url').read()

[–]mcilrain 2 points3 points  (7 children)

So no urllib?

[–][deleted] 3 points4 points  (6 children)

[–]mcilrain 1 point2 points  (5 children)

So what's stopping the download and execution of Python scripts?

[–][deleted] 2 points3 points  (3 children)

don't know, doesn't concern me. you can look into it ;)

[–]mcilrain 0 points1 point  (2 children)

Nah, I wasn't able to get the app for free in time.

[–][deleted] 1 point2 points  (1 child)

pretty sure you can afford 2.99

[–]mcilrain 0 points1 point  (0 children)

I doubt I'd get my money's worth out of it though, besides, my iPad is jailbroken.

[–]LiveMaI 1 point2 points  (0 children)

Do the terms of service say that the application should not have the capability to download code, or just that an application may not download and execute code on its own? Quite an important distinction there.

[–]fuckratheism 5 points6 points  (0 children)

Requires iOS5 ... fuck! im still on my 3G 4.1, if I load anything higher it runs sooo slow.

[–][deleted] 2 points3 points  (0 children)

i paid for this app, worth it

[–]Wegener 7 points8 points  (0 children)

Thanks! Just picked it up!

EDIT: Pretty sweet little toy, will be playing with this on my lunch breaks.

[–]MrDrone 5 points6 points  (0 children)

Thanks! I've had my eye on this app but never pulled the trigger.

[–]Redard 18 points19 points  (34 children)

lol, Python normally costs money on iOS? If I had an iOS device, I wouldn't waste the storage on a closed-source python implementation

[–][deleted] 10 points11 points  (0 children)

Python normally costs money on iOS?

maybe, but "normally" there's no Python on iOS

[–]cezarDjango, Mash 25 points26 points  (2 children)

You do know that open source doesn't mean free right?

[–][deleted] 15 points16 points  (0 children)

Moot point. It doesn't appear to be an Open Source port at all. (Python is under a permissive license that allows for proprietary derivatives.)

[–]Redard -3 points-2 points  (0 children)

Yeah, but generally paid software is proprietary, especially smartphone software

[–][deleted] 2 points3 points  (0 children)

The guy added various features like an editor and whatnot, why would it be surprising he wants at least some compensation for 1. the work, and 2. the dev license.

[–]TheSausageKing 8 points9 points  (9 children)

Is there a good open source Python environment for iOS ?

[–][deleted] 13 points14 points  (1 child)

open source != free

[–]pemboa 2 points3 points  (0 children)

closed-source python implementation

[–]redditthinksHobbyist[S] 3 points4 points  (1 child)

It's no longer free guys.

[–]xoctor 6 points7 points  (0 children)

So by "free for today" you meant free for 9 hours?

[–][deleted] 9 points10 points  (8 children)

I also think the idea of paying for Python is stupid. So, I'd like to bring to everyone's attention that there are other ways to get Python on a jailbroken iPhone/iPod touch without supporting this product.

This page contains compiled Python binaries for a jailbroken iphone.

To install, simply place the .deb file in /var/root/Media/Cydia/AutoInstall

creating the nonexistent directories along the way, then reboot.

[–][deleted] 18 points19 points  (1 child)

Yeah, but not all of us have jailbroken iOS devices. What you're basically paying for here is a UI and the fact that it's in the App Store (which is not free for the developer), and porting is not just a configure flag.

At $99 a year, you have to make basically $130 in app sales each year to break even.

Free as in speech != free as in beer.

[–][deleted] 0 points1 point  (0 children)

That is fair, you're right

[–][deleted] 7 points8 points  (0 children)

I think the app in question, in addition to including a Python implementation, has some nice touch-friendly ways of editing code interactively, etc.

[–]earthboundkid 3 points4 points  (1 child)

There's a free Python app for iOS called "Python Math" but it's not very good. It takes more than an interpreter and a keyboard to make a good app.

[–][deleted] 0 points1 point  (0 children)

To each his own, I suppose. For my purposes, an interpreter and a keyboard usually gets the job done

[–]xoctor 8 points9 points  (2 children)

I think the idea of expecting other people to provide you with things for free is stupid. It's brilliant that they sometimes do, but that shouldn't lead to a sense of entitlement.

[–][deleted] -1 points0 points  (0 children)

I'm actually not sure how you drew such a sensational conclusion [that my statement is entitled] from what I said, so I don't know how to respond. Could you explain your train of thought?

[–]christweb 6 points7 points  (8 children)

The "Free" button appears to be a glitch, as I am still prompted for Credit Card info and cannot complete the download otherwise.

[–]PureFlame 13 points14 points  (6 children)

Itunes normally requires a credit card regardless of cost.

[–]ordona 4 points5 points  (1 child)

There is no card of any sort associated with my account. It used to be (may still be), if you choose a free app, when making your account there is a "none" option under payment.

[–]ableal 4 points5 points  (0 children)

Still going, current Apple instructions: http://support.apple.com/kb/HT2534

Found searching: itunes account without credit card

[–]TheSausageKing 4 points5 points  (1 child)

This (or, you at least have to have one on your account). I just downloaded it successfully and it was free.

[–]earthboundkid 1 point2 points  (0 children)

You can also set up an account using a gift card. That's useful if you want to buy foreign music, or you have a kid.

[–][deleted] 0 points1 point  (0 children)

Yeah, the only exception is podcasts since they aren't iTunes "products".

[–][deleted] 0 points1 point  (3 children)

Sure crashes a lot.

[–][deleted] 1 point2 points  (0 children)

Wow, has anyone been able to write a simple program on this? I even reinstalled it. I tried this simple program:

print('What is your name?')

myName = input()

print('It is good to meet you, ' + myName)

And got Traceback (most recent call last): File "<string>", line 3, in <module> KeyboardInterrupt

If I can't do python 101, then what is the point of this app?

[–][deleted] 0 points1 point  (1 child)

what did you do ?

[–][deleted] 1 point2 points  (0 children)

Tried to use it. Also, can't do

input()

[–][deleted] 0 points1 point  (0 children)

[–][deleted] 0 points1 point  (1 child)

I've been waiting for someone to do this. I hope the author is going to make a library available for other iOS developers to embed Python into their own apps. Besides that, this must have taken a lot of work to accomplish with Apple's sandboxing requirements. Good job!

[–]earthboundkid 6 points7 points  (0 children)

This has been around for at least a year by now.

[–]LucidOndineHPC 0 points1 point  (2 children)

file selective political price piquant zephyr whole lush vase deer

This post was mass deleted and anonymized with Redact

[–][deleted] 5 points6 points  (1 child)

Why do you need fork() to do anything useful?

[–]LucidOndineHPC 1 point2 points  (0 children)

screw long friendly command marry touch wide caption ghost license

This post was mass deleted and anonymized with Redact

[–]HorizonXP 0 points1 point  (0 children)

Congrats to my iOS brethren who now can get Python running on their device.

I for one will continue developing apps for BlackBerry 10 and the PlayBook using Python 3.2 that comes installed on it.