Here are some statistics you might find interesting on the purchases of the Gambit REPL app for iPhone/iTouch. The app has been available on the Apple App Store for almost a month now and there have been 215 purchases. Apple keeps statistics on the store from which the purchases were made, giving an idea of where the users are located:
1. USA 110 2. Japan 26 3. Germany 17 4. Canada 16 5. UK 16 6. Australia 8 7. France 3 8. Netherlands 3 9. Spain 3 10. Argentina 2 11. Israel 2 12. Italy 2 13. Russia 2 14. Austria 1 15. Korea 1 16. Norway 1 17. South Africa 1 18. Turkey 1
So if you ever wondered where the users of Gambit live, this is probably a good approximation (actually it is an approximation of Gambit users with iPhones/iPads!). It would seem that most users, about 50%, are in the USA.
If you bought Gambit REPL, thank you! After Apple has taken a 30% fee, and income tax, I'm left with about $89 CND. Mind you, I'm not doing this for the money. It is an experiment to see if it is possible to sell an application developed in Scheme on the App Store. My next experiment is to add to Gambit REPL a way to share code with other users on a public repository directly from the iPhone/iPad (currently it is possible to download code by telneting to the device, but I'm aiming at something more user friendly). If you have ideas (or even better, code) please let me know.
Marc
Afficher les réponses par date
On 16 Jun 2011, at 14:07, Marc Feeley wrote:
Here are some statistics you might find interesting on the purchases of the Gambit REPL app for iPhone/iTouch. The app has been available on the Apple App Store for almost a month now and there have been 215 purchases. Apple keeps statistics on the store from which the purchases were made, giving an idea of where the users are located:
- USA 110
- Japan 26
That is surprisingly high for Japan; I didn't think it had a very high iPhone using population.
- Germany 17
- Canada 16
- UK 16
One of those was me!!!
On Jun 16, 2011, at 9:07 AM, Marc Feeley wrote:
My next experiment is to add to Gambit REPL a way to share code with other users on a public repository directly from the iPhone/iPad (currently it is possible to download code by telneting to the device, but I'm aiming at something more user friendly). If you have ideas (or even better, code) please let me know.
Interesting experiment. I suppose you know that the whole "download and interpret" thing is forbidden:
"3.3.2 An Application may not download or install executable code. Interpreted code may only be used in an Application if all scripts, code and interpreters are packaged in the Application and not downloaded. The only exception to the foregoing is scripts and code downloaded and run by Apple's built-in WebKit framework."
from the June 2011 agreement posted online here (scroll down to section 3.2.2): http://www.lagbaja.org/2011/06/ios-developer-program-license-agreement.html
One possible technically permissible workaround would be as follows, remembering that any downloaded code must be downloaded and *run* by WebKit (i.e., javascript):
1. An in-app action to "share script" would translate the scheme into some simple javascript equivalent, say a javascript s-expression class. 2. A small bit of *javascript* in the gambit REPL app would push this javascript translation to the repository. Use javascript for the upload as well so that all network interaction takes place via WebKit. 3. The repository server would translate it back to scheme *only for display purposes* on the depository website/wiki, but the only thing that would ever go over the network is the javascript version. 4. An in-app action to "download script" would use *javscript* to request the script (which is displayed on the repository website as scheme, and therefore displayed in-app using an iOS UIWebView as scheme, but is actually transmitted over the network as *javascript*) and download the javascript translation to the iOS device. 5. Some *javascript* in the gambit REPL app would run it. Running it would consist of executing a simple function in javascript that translates the naive javascript representation of scheme code into scheme readable by gambit, and passing it off to gambit.
warmest regards,
Ralph
Raffael Cavallaro raffaelcavallaro@me.com
Congratulations, Marc.
--- On Thu, 6/16/11, Marc Feeley feeley@iro.umontreal.ca wrote:
From: Marc Feeley feeley@iro.umontreal.ca Subject: [gambit-list] Gambit REPL statistics To: "Gambit List" Gambit-list@iro.umontreal.ca Date: Thursday, June 16, 2011, 9:07 AM Here are some statistics you might find interesting on the purchases of the Gambit REPL app for iPhone/iTouch. The app has been available on the Apple App Store for almost a month now and there have been 215 purchases. Apple keeps statistics on the store from which the purchases were made, giving an idea of where the users are located:
1. USA 110 2. Japan 26 3. Germany 17 4. Canada 16 5. UK 16 6. Australia 8 7. France 3 8. Netherlands 3 9. Spain 3 10. Argentina 2 11. Israel 2 12. Italy 2 13. Russia 2 14. Austria 1 15. Korea 1 16. Norway 1 17. South Africa 1 18. Turkey 1
So if you ever wondered where the users of Gambit live, this is probably a good approximation (actually it is an approximation of Gambit users with iPhones/iPads!). It would seem that most users, about 50%, are in the USA.
If you bought Gambit REPL, thank you! After Apple has taken a 30% fee, and income tax, I'm left with about $89 CND. Mind you, I'm not doing this for the money. It is an experiment to see if it is possible to sell an application developed in Scheme on the App Store. My next experiment is to add to Gambit REPL a way to share code with other users on a public repository directly from the iPhone/iPad (currently it is possible to download code by telneting to the device, but I'm aiming at something more user friendly). If you have ideas (or even better, code) please let me know.
Marc
Gambit-list mailing list Gambit-list@iro.umontreal.ca https://webmail.iro.umontreal.ca/mailman/listinfo/gambit-list
On Jun 16, 2011, at 9:07 AM, Marc Feeley wrote:
My next experiment is to add to Gambit REPL a way to share code with other users on a public repository directly from the iPhone/iPad (currently it is possible to download code by telneting to the device, but I'm aiming at something more user friendly). If you have ideas (or even better, code) please let me know.
Interesting experiment. I suppose you know that the whole "download and interpret" thing is forbidden:
"3.3.2 An Application may not download or install executable code. Interpreted code may only be used in an Application if all scripts, code and interpreters are packaged in the Application and not downloaded. The only exception to the foregoing is scripts and code downloaded and run by Apple's built-in WebKit framework."
from the June 2011 agreement posted online here (scroll down to section 3.2.2): http://www.lagbaja.org/2011/06/ios-developer-program-license-agreement.html
One possible technically permissible workaround would be as follows, remembering that any downloaded code must be downloaded and *run* by WebKit (i.e., javascript):
1. An in-app action to "share script" would translate the scheme into some simple javascript equivalent, say a javascript s-expression class. 2. A small bit of *javascript* in the gambit REPL app would push this javascript translation to the repository. Use javascript for the upload as well so that all network interaction takes place via WebKit. 3. The repository server would translate it back to scheme *only for display purposes* on the depository website/wiki, but the only thing that would ever go over the network is the javascript version. 4. An in-app action to "download script" would use *javscript* to request the script (which is displayed on the repository website as scheme, and therefore displayed in-app using an iOS UIWebView as scheme, but is actually transmitted over the network as *javascript*) and download the javascript translation to the iOS device. 5. Some *javascript* in the gambit REPL app would run it. Running it would consist of executing a simple function in javascript that translates the naive javascript representation of scheme code into scheme readable by gambit, and passing it off to gambit.
warmest regards,
Ralph
p.s. sorry if this is a duplicate - a combination of a broken address book entry and autocomplete resulted in what appears to be a delivery failure.
Raffael Cavallaro raffaelcavallaro@me.com
On 2011-06-16, at 3:18 PM, Raffael Cavallaro wrote:
On Jun 16, 2011, at 9:07 AM, Marc Feeley wrote:
My next experiment is to add to Gambit REPL a way to share code with other users on a public repository directly from the iPhone/iPad (currently it is possible to download code by telneting to the device, but I'm aiming at something more user friendly). If you have ideas (or even better, code) please let me know.
Interesting experiment. I suppose you know that the whole "download and interpret" thing is forbidden:
"3.3.2 An Application may not download or install executable code. Interpreted code may only be used in an Application if all scripts, code and interpreters are packaged in the Application and not downloaded. The only exception to the foregoing is scripts and code downloaded and run by Apple's built-in WebKit framework."
from the June 2011 agreement posted online here (scroll down to section 3.2.2): http://www.lagbaja.org/2011/06/ios-developer-program-license-agreement.html
One possible technically permissible workaround would be as follows, remembering that any downloaded code must be downloaded and *run* by WebKit (i.e., javascript):
- An in-app action to "share script" would translate the scheme into some simple javascript equivalent, say a javascript s-expression class.
- A small bit of *javascript* in the gambit REPL app would push this javascript translation to the repository. Use javascript for the upload as well so that all network interaction takes place via WebKit.
- The repository server would translate it back to scheme *only for display purposes* on the depository website/wiki, but the only thing that would ever go over the network is the javascript version.
- An in-app action to "download script" would use *javscript* to request the script (which is displayed on the repository website as scheme, and therefore displayed in-app using an iOS UIWebView as scheme, but is actually transmitted over the network as *javascript*) and download the javascript translation to the iOS device.
- Some *javascript* in the gambit REPL app would run it. Running it would consist of executing a simple function in javascript that translates the naive javascript representation of scheme code into scheme readable by gambit, and passing it off to gambit.
warmest regards,
That's a neat hack. Basically, you encode the Scheme code as a JavaScript program which, when run, produces the Scheme code which will be handed to Gambit. Hmmm... Are there any lawyers on this list who would like to comment?
Marc
On Thu, Jun 16, 2011 at 03:34:13PM -0400, Marc Feeley wrote:
That's a neat hack. Basically, you encode the Scheme code as a JavaScript program which, when run, produces the Scheme code which will be handed to Gambit. Hmmm... Are there any lawyers on this list who would like to comment?
Not a lawyer, but then Apple isn't bound by the letter of their rules anyway. I strongly susp[ect they'd diallow it, and that they might look askance at the REPL you've already got in the store.
-- hendrik
On Jun 16, 2011, at 4:33 PM, Hendrik Boom wrote:
Not a lawyer, but then Apple isn't bound by the letter of their rules anyway. I strongly susp[ect they'd diallow it, and that they might look askance at the REPL you've already got in the store.
Sure, that's quite possible, but the whole point of this exercise is to see just how far you can go and still get accepted by the App Store. There's little question that a gambit REPL that uploaded and downloaded and ran actual *scheme* code would be in direct violation of the developer agreement. The question is, how far can you go by using WebKit/javascript for all of your network interaction?
warmest
Raffael Cavallaro raffaelcavallaro@me.com
On Thu, Jun 16, 2011 at 04:36:54PM -0400, Raffael Cavallaro wrote:
On Jun 16, 2011, at 4:33 PM, Hendrik Boom wrote:
Not a lawyer, but then Apple isn't bound by the letter of their rules anyway. I strongly susp[ect they'd diallow it, and that they might look askance at the REPL you've already got in the store.
Sure, that's quite possible, but the whole point of this exercise is to see just how far you can go and still get accepted by the App Store. There's little question that a gambit REPL that uploaded and downloaded and ran actual *scheme* code would be in direct violation of the developer agreement. The question is, how far can you go by using WebKit/javascript for all of your network interaction?
Is it a matter of satisfying the requirements of the Apple censors, or a matter of smuggling something in hoping they won't notice?
-- hendrik kkk
On Jun 16, 2011, at 9:26 PM, Hendrik Boom wrote:
Is it a matter of satisfying the requirements of the Apple censors, or a matter of smuggling something in hoping they won't notice?
The former; if an app is technically in violation, it's just a matter of time before they notice and pull it from the App Store.
Given that distinction, using Dropbox is just hoping they don't notice - you're downloading and running scheme code, not javascript. The method I outlined is arguably in compliance with the terms of the license. The only code being download and run is javascript, using WebKit.
If you strictly interpret the clause "Interpreted code may only be used in an Application if all scripts, code and interpreters are packaged in the Application and not downloaded" then gambit REPL is already in violation; it allows users to run scripts that are *not* "packaged in the Application". Given that Apple appears to be interpreting this part leniently, it's conceivable that they'd be ok with an app that uploads, downloads, and runs javascript using Apple's WebKit interpreter, but uses javascript itself to convert this to scheme on the iOS device.
warmest regards,
Ralph
Raffael Cavallaro raffaelcavallaro@me.com
On Thu, Jun 16, 2011 at 9:07 AM, Marc Feeley feeley@iro.umontreal.cawrote:
My next experiment is to add to Gambit REPL a way to share code with other users on a public repository directly from the iPhone/iPad (currently it is possible to download code by telneting to the device, but I'm aiming at something more user friendly). If you have ideas (or even better, code) please let me know.
My suggestion would be just to add Dropbox support. Then tag a new release as being 'able to save to your dropbox'. Whether you've marked it as public or not isn't really relavent :) Seems like lots of iOS apps now support Dropbox, so it shouldn't raise any real issues - and I find Dropbox support very useful for several iOS apps I do use.
Adam
Interesting suggestion. It seems fine, but there is still security danger of private data. Some bad code can access user's data and transfer it to network. So Apple will not allow those kind of code sharing However I wish you to try this on AppStore ;)
On Jun 17, 2011, at 10:35 AM, Adam King wrote:
On Thu, Jun 16, 2011 at 9:07 AM, Marc Feeley feeley@iro.umontreal.ca wrote: My next experiment is to add to Gambit REPL a way to share code with other users on a public repository directly from the iPhone/iPad (currently it is possible to download code by telneting to the device, but I'm aiming at something more user friendly). If you have ideas (or even better, code) please let me know.
My suggestion would be just to add Dropbox support. Then tag a new release as being 'able to save to your dropbox'. Whether you've marked it as public or not isn't really relavent :) Seems like lots of iOS apps now support Dropbox, so it shouldn't raise any real issues - and I find Dropbox support very useful for several iOS apps I do use.
Adam _______________________________________________ Gambit-list mailing list Gambit-list@iro.umontreal.ca https://webmail.iro.umontreal.ca/mailman/listinfo/gambit-list