[Pharo-project] cog vm for iOS
Hi All, Sorry if this topic has been covered in a previous email, I couldn't find anything conclusive so I'm posting it for my own clarity. I am a smalltalk programmer at heart but have been working in java at a java shop for sometime. Recently there's been a very strong directive from management to "get everything working on an iPad". I see a great opportunity to introduce pharo at the moment but need a way to deploy to iPad/iPhone devices. I'm not a c programmer and am overwhelmed at the thought of trying to build a cog vm for ios devices. Is there a binary package of cog vm for iPad/iPhone available somewhere?
On 25 May 2011 16:22, Steve Wirts <stevewirts@gmail.com> wrote:
Hi All, Sorry if this topic has been covered in a previous email, I couldn't find anything conclusive so I'm posting it for my own clarity. I am a smalltalk programmer at heart but have been working in java at a java shop for sometime. Â Recently there's been a very strong directive from management to "get everything working on an iPad". I see a great opportunity to introduce pharo at the moment but need a way to deploy to iPad/iPhone devices. Â I'm not a c programmer and am overwhelmed at the thought of trying to build a cog vm for ios devices.
Is there a binary package of cog vm for iPad/iPhone available somewhere?
Ask Esteban! :) -- Best regards, Igor Stasenko AKA sig.
Well... I'm going to use this post to talk a bit about Pharo in iOS, because it is more complex than "having a vm working" But first, a summary of where we stand: 1) The Stack VM is working with iPhone/iPad, but needs some minor adjustments (some tuning). One problem here is that I didn't integrate it to CMakeVMMaker (and as a consequence, to hudson), so build it is not a trivial task. But I will, as soon as some one jump and say "hey, I'm going to use it, for real!"... or as soon as I can find a free afternoon... it is planned (and I worked a little on this), but it is not a priority right now :) 2) The Cog (I mean, the jitter) will never work on iPad/iPhone, because of the apple license (clause 3.3.2) and because of the security sandbox policy. But I think the Stack VM can do a pretty job. No, I'm not going to prepare this just for recreational purposes because I do not have the time, and the community work I do should be spent in things the community can use... and I think that Eliot (who is, in fact, the one who can do this, I'm just a builder) will think similar :) So... if we have a vm running on iOS, why there is no a legion of fellow pharoers taking over the appstore? Well... because it is not enough. There are several problems, besides the vm working or not (to be fair, the interpreter vm works on iphone since at least two years, and John is the only one who succeed on pushing some nice smalltalk apps into the appstore). The main problem is that our morphic world is ok for desktop working, and some times for desktop commercial apps (like those of pinesoft), but it just can't be used to create real apps for the iPhone/iPad market. There are some exceptions, like some eToys work and probable the developing of games like "tic-tac-toe" or so... (I mean: graphic games who can be done with morphs). But as a general rule, you can't do a real app in pharo/squeak who runs in the iPhone/iPad and can be sold in the appstore. To overcome this problem, what John does is to create the full view in Cocoa, and "plug" the model to pharo/squeak images, using pharo as a module of a cocoa application. This can be done for several apps (and the fraction calculator is an example), but fails when you want a deeper interaction (because of the cost, not just in "programming time" but also the "translation time" between the cocoa app and pharo: it is just not good enough to bring a cool user experience (at least in all my experiments it was the case) There is another possible approach, who I think is the better in the long way, and that is what I was doing with Deimos project: using a bridge to construct, in pharo, real cocoa UI objects... the advantages with this are obvious. Nevertheless, there are also some problems with this approach: 1) last year I was working on this, and apple changed a clause. The result can be expressed as if they executed: 'deimos become: shit'. Months after they review the policy, but I was concentrated on Mars (the desktop equivalent to Deimos). I will continue this, but first I want to finish Mars, and also I need to solve the problem below: 2) there are also a performance problem with the ObjectiveC plugin and callbacks. In all my experiments, I never went below 70ms executing a callback from cocoa to pharo (and that's necessary, for example, to fill tables). The minimum time needed to have a cool "scroll" effect on tables is 40ms. Of course, iPhone 4 is better than 3gs... but the problem remains. The real thing is that ObjectiveC plugin relies on a semaphore communication model, and that's not good enough. So... I think the better approach here is to port FFI-Callback plugin (latest work of Eliot) to iOS. FFI-Callback plugin uses a whole different approach, who can overcome this performance issues (and some other who's not the case mention here). So... yes... I would love to finish this soon. But right now, other issues are top in priotity, and I just can't promise a release date. (Of course, the stackvm for iphone will be compiling on hudson some time soon... before ESUG for sure) hope this can explain all the status... :) cheers, Esteban El 25/05/2011, a las 11:56a.m., Igor Stasenko escribió:
On 25 May 2011 16:22, Steve Wirts <stevewirts@gmail.com> wrote:
Hi All, Sorry if this topic has been covered in a previous email, I couldn't find anything conclusive so I'm posting it for my own clarity. I am a smalltalk programmer at heart but have been working in java at a java shop for sometime. Recently there's been a very strong directive from management to "get everything working on an iPad". I see a great opportunity to introduce pharo at the moment but need a way to deploy to iPad/iPhone devices. I'm not a c programmer and am overwhelmed at the thought of trying to build a cog vm for ios devices.
Is there a binary package of cog vm for iPad/iPhone available somewhere?
Ask Esteban! :)
-- Best regards, Igor Stasenko AKA sig.
A third option could be to build a polymorph theme for iPAD. This is an intermediate option I discussed a bit with Bert, to do a DrGeo port for iPAD. Frankly speaking if someone is interested to work with me on that direction we may be able to produce something in our range and useful for the community at large. Hilaire Le 25/05/2011 18:01, Esteban Lorenzano a écrit :
Well... I'm going to use this post to talk a bit about Pharo in iOS, because it is more complex than "having a vm working" But first, a summary of where we stand: 1) The Stack VM is working with iPhone/iPad, but needs some minor adjustments (some tuning). One problem here is that I didn't integrate it to CMakeVMMaker (and as a consequence, to hudson), so build it is not a trivial task. But I will, as soon as some one jump and say "hey, I'm going to use it, for real!"... or as soon as I can find a free afternoon... it is planned (and I worked a little on this), but it is not a priority right now :) 2) The Cog (I mean, the jitter) will never work on iPad/iPhone, because of the apple license (clause 3.3.2) and because of the security sandbox policy. But I think the Stack VM can do a pretty job. No, I'm not going to prepare this just for recreational purposes because I do not have the time, and the community work I do should be spent in things the community can use... and I think that Eliot (who is, in fact, the one who can do this, I'm just a builder) will think similar :)
So... if we have a vm running on iOS, why there is no a legion of fellow pharoers taking over the appstore?
Well... because it is not enough. There are several problems, besides the vm working or not (to be fair, the interpreter vm works on iphone since at least two years, and John is the only one who succeed on pushing some nice smalltalk apps into the appstore). The main problem is that our morphic world is ok for desktop working, and some times for desktop commercial apps (like those of pinesoft), but it just can't be used to create real apps for the iPhone/iPad market. There are some exceptions, like some eToys work and probable the developing of games like "tic-tac-toe" or so... (I mean: graphic games who can be done with morphs). But as a general rule, you can't do a real app in pharo/squeak who runs in the iPhone/iPad and can be sold in the appstore. To overcome this problem, what John does is to create the full view in Cocoa, and "plug" the model to pharo/squeak images, using pharo as a module of a cocoa application. This can be done for several apps (and the fraction calculator is an example), but fails when you want a deeper interaction (because of the cost, not just in "programming time" but also the "translation time" between the cocoa app and pharo: it is just not good enough to bring a cool user experience (at least in all my experiments it was the case)
There is another possible approach, who I think is the better in the long way, and that is what I was doing with Deimos project: using a bridge to construct, in pharo, real cocoa UI objects... the advantages with this are obvious. Nevertheless, there are also some problems with this approach: 1) last year I was working on this, and apple changed a clause. The result can be expressed as if they executed: 'deimos become: shit'. Months after they review the policy, but I was concentrated on Mars (the desktop equivalent to Deimos). I will continue this, but first I want to finish Mars, and also I need to solve the problem below: 2) there are also a performance problem with the ObjectiveC plugin and callbacks. In all my experiments, I never went below 70ms executing a callback from cocoa to pharo (and that's necessary, for example, to fill tables). The minimum time needed to have a cool "scroll" effect on tables is 40ms. Of course, iPhone 4 is better than 3gs... but the problem remains. The real thing is that ObjectiveC plugin relies on a semaphore communication model, and that's not good enough. So... I think the better approach here is to port FFI-Callback plugin (latest work of Eliot) to iOS. FFI-Callback plugin uses a whole different approach, who can overcome this performance issues (and some other who's not the case mention here).
So... yes... I would love to finish this soon. But right now, other issues are top in priotity, and I just can't promise a release date. (Of course, the stackvm for iphone will be compiling on hudson some time soon... before ESUG for sure)
hope this can explain all the status... :)
cheers, Esteban
El 25/05/2011, a las 11:56a.m., Igor Stasenko escribió:
On 25 May 2011 16:22, Steve Wirts <stevewirts@gmail.com> wrote:
Hi All, Sorry if this topic has been covered in a previous email, I couldn't find anything conclusive so I'm posting it for my own clarity. I am a smalltalk programmer at heart but have been working in java at a java shop for sometime. Recently there's been a very strong directive from management to "get everything working on an iPad". I see a great opportunity to introduce pharo at the moment but need a way to deploy to iPad/iPhone devices. I'm not a c programmer and am overwhelmed at the thought of trying to build a cog vm for ios devices.
Is there a binary package of cog vm for iPad/iPhone available somewhere?
Ask Esteban! :)
-- Best regards, Igor Stasenko AKA sig.
-- Education 0.2 -- http://blog.ofset.org/hilaire
Sorry, but no, this is not an option. A theme will never pass the apple quality check :( Esteban El 25/05/2011, a las 1:22p.m., Hilaire Fernandes escribió:
A third option could be to build a polymorph theme for iPAD. This is an intermediate option I discussed a bit with Bert, to do a DrGeo port for iPAD. Frankly speaking if someone is interested to work with me on that direction we may be able to produce something in our range and useful for the community at large.
Hilaire
Le 25/05/2011 18:01, Esteban Lorenzano a écrit :
Well... I'm going to use this post to talk a bit about Pharo in iOS, because it is more complex than "having a vm working" But first, a summary of where we stand: 1) The Stack VM is working with iPhone/iPad, but needs some minor adjustments (some tuning). One problem here is that I didn't integrate it to CMakeVMMaker (and as a consequence, to hudson), so build it is not a trivial task. But I will, as soon as some one jump and say "hey, I'm going to use it, for real!"... or as soon as I can find a free afternoon... it is planned (and I worked a little on this), but it is not a priority right now :) 2) The Cog (I mean, the jitter) will never work on iPad/iPhone, because of the apple license (clause 3.3.2) and because of the security sandbox policy. But I think the Stack VM can do a pretty job. No, I'm not going to prepare this just for recreational purposes because I do not have the time, and the community work I do should be spent in things the community can use... and I think that Eliot (who is, in fact, the one who can do this, I'm just a builder) will think similar :)
So... if we have a vm running on iOS, why there is no a legion of fellow pharoers taking over the appstore?
Well... because it is not enough. There are several problems, besides the vm working or not (to be fair, the interpreter vm works on iphone since at least two years, and John is the only one who succeed on pushing some nice smalltalk apps into the appstore). The main problem is that our morphic world is ok for desktop working, and some times for desktop commercial apps (like those of pinesoft), but it just can't be used to create real apps for the iPhone/iPad market. There are some exceptions, like some eToys work and probable the developing of games like "tic-tac-toe" or so... (I mean: graphic games who can be done with morphs). But as a general rule, you can't do a real app in pharo/squeak who runs in the iPhone/iPad and can be sold in the appstore. To overcome this problem, what John does is to create the full view in Cocoa, and "plug" the model to pharo/squeak images, using pharo as a module of a cocoa application. This can be done for several apps (and the fraction calculator is an example), but fails when you want a deeper interaction (because of the cost, not just in "programming time" but also the "translation time" between the cocoa app and pharo: it is just not good enough to bring a cool user experience (at least in all my experiments it was the case)
There is another possible approach, who I think is the better in the long way, and that is what I was doing with Deimos project: using a bridge to construct, in pharo, real cocoa UI objects... the advantages with this are obvious. Nevertheless, there are also some problems with this approach: 1) last year I was working on this, and apple changed a clause. The result can be expressed as if they executed: 'deimos become: shit'. Months after they review the policy, but I was concentrated on Mars (the desktop equivalent to Deimos). I will continue this, but first I want to finish Mars, and also I need to solve the problem below: 2) there are also a performance problem with the ObjectiveC plugin and callbacks. In all my experiments, I never went below 70ms executing a callback from cocoa to pharo (and that's necessary, for example, to fill tables). The minimum time needed to have a cool "scroll" effect on tables is 40ms. Of course, iPhone 4 is better than 3gs... but the problem remains. The real thing is that ObjectiveC plugin relies on a semaphore communication model, and that's not good enough. So... I think the better approach here is to port FFI-Callback plugin (latest work of Eliot) to iOS. FFI-Callback plugin uses a whole different approach, who can overcome this performance issues (and some other who's not the case mention here).
So... yes... I would love to finish this soon. But right now, other issues are top in priotity, and I just can't promise a release date. (Of course, the stackvm for iphone will be compiling on hudson some time soon... before ESUG for sure)
hope this can explain all the status... :)
cheers, Esteban
El 25/05/2011, a las 11:56a.m., Igor Stasenko escribió:
On 25 May 2011 16:22, Steve Wirts <stevewirts@gmail.com> wrote:
Hi All, Sorry if this topic has been covered in a previous email, I couldn't find anything conclusive so I'm posting it for my own clarity. I am a smalltalk programmer at heart but have been working in java at a java shop for sometime. Recently there's been a very strong directive from management to "get everything working on an iPad". I see a great opportunity to introduce pharo at the moment but need a way to deploy to iPad/iPhone devices. I'm not a c programmer and am overwhelmed at the thought of trying to build a cog vm for ios devices.
Is there a binary package of cog vm for iPad/iPhone available somewhere?
Ask Esteban! :)
-- Best regards, Igor Stasenko AKA sig.
-- Education 0.2 -- http://blog.ofset.org/hilaire
I have no idea how hard it is to pass the apple check. It can indeed temper any effort doing a theme. Hilaire Le 25/05/2011 18:29, Esteban Lorenzano a écrit :
Sorry, but no, this is not an option. A theme will never pass the apple quality check :(
Esteban
El 25/05/2011, a las 1:22p.m., Hilaire Fernandes escribió:
A third option could be to build a polymorph theme for iPAD. This is an intermediate option I discussed a bit with Bert, to do a DrGeo port for iPAD. Frankly speaking if someone is interested to work with me on that direction we may be able to produce something in our range and useful for the community at large.
Hilaire
Le 25/05/2011 18:01, Esteban Lorenzano a écrit :
Well... I'm going to use this post to talk a bit about Pharo in iOS, because it is more complex than "having a vm working" But first, a summary of where we stand: 1) The Stack VM is working with iPhone/iPad, but needs some minor adjustments (some tuning). One problem here is that I didn't integrate it to CMakeVMMaker (and as a consequence, to hudson), so build it is not a trivial task. But I will, as soon as some one jump and say "hey, I'm going to use it, for real!"... or as soon as I can find a free afternoon... it is planned (and I worked a little on this), but it is not a priority right now :) 2) The Cog (I mean, the jitter) will never work on iPad/iPhone, because of the apple license (clause 3.3.2) and because of the security sandbox policy. But I think the Stack VM can do a pretty job. No, I'm not going to prepare this just for recreational purposes because I do not have the time, and the community work I do should be spent in things the community can use... and I think that Eliot (who is, in fact, the one who can do this, I'm just a builder) will think similar :)
So... if we have a vm running on iOS, why there is no a legion of fellow pharoers taking over the appstore?
Well... because it is not enough. There are several problems, besides the vm working or not (to be fair, the interpreter vm works on iphone since at least two years, and John is the only one who succeed on pushing some nice smalltalk apps into the appstore). The main problem is that our morphic world is ok for desktop working, and some times for desktop commercial apps (like those of pinesoft), but it just can't be used to create real apps for the iPhone/iPad market. There are some exceptions, like some eToys work and probable the developing of games like "tic-tac-toe" or so... (I mean: graphic games who can be done with morphs). But as a general rule, you can't do a real app in pharo/squeak who runs in the iPhone/iPad and can be sold in the appstore. To overcome this problem, what John does is to create the full view in Cocoa, and "plug" the model to pharo/squeak images, using pharo as a module of a cocoa application. This can be done for several apps (and the fraction calculator is an example), but fails when you want a deeper interaction (because of the cost, not just in "programming time" but also the "translation time" between the cocoa app and pharo: it is just not good enough to bring a cool user experience (at least in all my experiments it was the case)
There is another possible approach, who I think is the better in the long way, and that is what I was doing with Deimos project: using a bridge to construct, in pharo, real cocoa UI objects... the advantages with this are obvious. Nevertheless, there are also some problems with this approach: 1) last year I was working on this, and apple changed a clause. The result can be expressed as if they executed: 'deimos become: shit'. Months after they review the policy, but I was concentrated on Mars (the desktop equivalent to Deimos). I will continue this, but first I want to finish Mars, and also I need to solve the problem below: 2) there are also a performance problem with the ObjectiveC plugin and callbacks. In all my experiments, I never went below 70ms executing a callback from cocoa to pharo (and that's necessary, for example, to fill tables). The minimum time needed to have a cool "scroll" effect on tables is 40ms. Of course, iPhone 4 is better than 3gs... but the problem remains. The real thing is that ObjectiveC plugin relies on a semaphore communication model, and that's not good enough. So... I think the better approach here is to port FFI-Callback plugin (latest work of Eliot) to iOS. FFI-Callback plugin uses a whole different approach, who can overcome this performance issues (and some other who's not the case mention here).
So... yes... I would love to finish this soon. But right now, other issues are top in priotity, and I just can't promise a release date. (Of course, the stackvm for iphone will be compiling on hudson some time soon... before ESUG for sure)
hope this can explain all the status... :)
cheers, Esteban
El 25/05/2011, a las 11:56a.m., Igor Stasenko escribió:
On 25 May 2011 16:22, Steve Wirts <stevewirts@gmail.com> wrote:
Hi All, Sorry if this topic has been covered in a previous email, I couldn't find anything conclusive so I'm posting it for my own clarity. I am a smalltalk programmer at heart but have been working in java at a java shop for sometime. Recently there's been a very strong directive from management to "get everything working on an iPad". I see a great opportunity to introduce pharo at the moment but need a way to deploy to iPad/iPhone devices. I'm not a c programmer and am overwhelmed at the thought of trying to build a cog vm for ios devices.
Is there a binary package of cog vm for iPad/iPhone available somewhere?
Ask Esteban! :)
-- Best regards, Igor Stasenko AKA sig.
-- Education 0.2 -- http://blog.ofset.org/hilaire
-- Education 0.2 -- http://blog.ofset.org/hilaire
On 25 May 2011 20:45, Hilaire Fernandes <hilaire.fernandes@gmail.com> wrote:
I have no idea how hard it is to pass the apple check. It can indeed temper any effort doing a theme.
I think that i can express Apple's policy using single statement: - why you using language X for your project, if you can implement same in Objective C. :)
Hilaire
Le 25/05/2011 18:29, Esteban Lorenzano a écrit :
Sorry, but no, this is not an option. A theme will never pass the apple quality check :(
Esteban
El 25/05/2011, a las 1:22p.m., Hilaire Fernandes escribió:
A third option could be to build a polymorph theme for iPAD. This is an intermediate option I discussed a bit with Bert, to do a DrGeo port for iPAD. Frankly speaking if someone is interested to work with me on that direction we may be able to produce something in our range and useful for the community at large.
Hilaire
Le 25/05/2011 18:01, Esteban Lorenzano a écrit :
Well... I'm going to use this post to talk a bit about Pharo in iOS, because it is more complex than "having a vm working" But first, a summary of where we stand: 1) The Stack VM is working with iPhone/iPad, but needs some minor adjustments (some tuning). One problem here is that I didn't integrate it to CMakeVMMaker (and as a consequence, to hudson), so build it is not a trivial task. But I will, as soon as some one jump and say "hey, I'm going to use it, for real!"... or as soon as I can find a free afternoon... it is planned (and I worked a little on this), but it is not a priority right now :) 2) The Cog (I mean, the jitter) will never work on iPad/iPhone, because of the apple license (clause 3.3.2) and because of the security sandbox policy. But I think the Stack VM can do a pretty job. No, I'm not going to prepare this just for recreational purposes because I do not have the time, and the community work I do should be spent in things the community can use... and I think that Eliot (who is, in fact, the one who can do this, I'm just a builder) will think similar :)
So... if we have a vm running on iOS, why there is no a legion of fellow pharoers taking over the appstore?
Well... because it is not enough. There are several problems, besides the vm working or not (to be fair, the interpreter vm works on iphone since at least two years, and John is the only one who succeed on pushing some nice smalltalk apps into the appstore). The main problem is that our morphic world is ok for desktop working, and some times for desktop commercial apps (like those of pinesoft), but it just can't be used to create real apps for the iPhone/iPad market. There are some exceptions, like some eToys work and probable the developing of games like "tic-tac-toe" or so... (I mean: graphic games who can be done with morphs). But as a general rule, you can't do a real app in pharo/squeak who runs in the iPhone/iPad and can be sold in the appstore. To overcome this problem, what John does is to create the full view in Cocoa, and "plug" the model to pharo/squeak images, using pharo as a module of a cocoa application. This can be done for several apps (and the fraction calculator is an example), but fails when you want a deeper interaction (because of the cost, not just in "programming time" but also the "translation time" between the cocoa app and pharo: it is just not good enough to bring a cool user experience (at least in all my experiments it was the case)
There is another possible approach, who I think is the better in the long way, and that is what I was doing with Deimos project: using a bridge to construct, in pharo, real cocoa UI objects... the advantages with this are obvious. Nevertheless, there are also some problems with this approach: 1) last year I was working on this, and apple changed a clause. The result can be expressed as if they executed: 'deimos become: shit'. Months after they review the policy, but I was concentrated on Mars (the desktop equivalent to Deimos). I will continue this, but first I want to finish Mars, and also I need to solve the problem below: 2) there are also a performance problem with the ObjectiveC plugin and callbacks. In all my experiments, I never went below 70ms executing a callback from cocoa to pharo (and that's necessary, for example, to fill tables). The minimum time needed to have a cool "scroll" effect on tables is 40ms. Of course, iPhone 4 is better than 3gs... but the problem remains. The real thing is that ObjectiveC plugin relies on a semaphore communication model, and that's not good enough. So... I think the better approach here is to port FFI-Callback plugin (latest work of Eliot) to iOS. FFI-Callback plugin uses a whole different approach, who can overcome this performance issues (and some other who's not the case mention here).
So... yes... I would love to finish this soon. But right now, other issues are top in priotity, and I just can't promise a release date. (Of course, the stackvm for iphone will be compiling on hudson some time soon... before ESUG for sure)
hope this can explain all the status... :)
cheers, Esteban
El 25/05/2011, a las 11:56a.m., Igor Stasenko escribió:
On 25 May 2011 16:22, Steve Wirts <stevewirts@gmail.com> wrote:
Hi All, Sorry if this topic has been covered in a previous email, I couldn't find anything conclusive so I'm posting it for my own clarity. I am a smalltalk programmer at heart but have been working in java at a java shop for sometime. Â Recently there's been a very strong directive from management to "get everything working on an iPad". I see a great opportunity to introduce pharo at the moment but need a way to deploy to iPad/iPhone devices. Â I'm not a c programmer and am overwhelmed at the thought of trying to build a cog vm for ios devices.
Is there a binary package of cog vm for iPad/iPhone available somewhere?
Ask Esteban! :)
-- Best regards, Igor Stasenko AKA sig.
-- Education 0.2 -- http://blog.ofset.org/hilaire
-- Education 0.2 -- http://blog.ofset.org/hilaire
-- Best regards, Igor Stasenko AKA sig.
Em 26-05-2011 09:02, Igor Stasenko escreveu:
On 25 May 2011 20:45, Hilaire Fernandes <hilaire.fernandes@gmail.com> wrote:
I have no idea how hard it is to pass the apple check. It can indeed temper any effort doing a theme.
I think that i can express Apple's policy using single statement: - why you using language X for your project, if you can implement same in Objective C.
:)
Clearly Apple has a restrictive police on development and commercialization of products for the iOS platform. It is not related only to development language/environment but also content. Apple censors and decides what can and what cannot be put in "their" (should be their customers) tablets/phones/iPods (kind: no porno, no political, no certain kinds of violence, etc). One thing that amazes me is that currently there are two contestants to the "Tablet & Smartphone World Grand Prix": iOS and Android but people in the SqueakVM/CogVM communities are centered only around a single "monopolist" manufacturer. IMHO it would be good to have SqueakVM/CogVM decently running in Android (>= 2.1). In the long term I think Android will win this "championship". My 2¢ CdAB
Hilaire
(...)
Clearly Apple has a restrictive police on development and commercialization of products for the iOS platform. It is not related only to development language/environment but also content. Apple censors and decides what can and what cannot be put in "their" (should be their customers) tablets/phones/iPods (kind: no porno, no political, no certain kinds of violence, etc).
One thing that amazes me is that currently there are two contestants to the "Tablet& Smartphone World Grand Prix": iOS and Android but people in the SqueakVM/CogVM communities are centered only around a single "monopolist" manufacturer. IMHO it would be good to have SqueakVM/CogVM decently running in Android (>= 2.1).
In the long term I think Android will win this "championship". +1... but don't say it too loudly; it might wake up the fanboys ;)
"In the long run we are all dead" ;) (sorry, I couldn't resist it) El 26/05/2011, a las 2:20p.m., Toon Verwaest escribió:
Clearly Apple has a restrictive police on development and commercialization of products for the iOS platform. It is not related only to development language/environment but also content. Apple censors and decides what can and what cannot be put in "their" (should be their customers) tablets/phones/iPods (kind: no porno, no political, no certain kinds of violence, etc).
One thing that amazes me is that currently there are two contestants to the "Tablet& Smartphone World Grand Prix": iOS and Android but people in the SqueakVM/CogVM communities are centered only around a single "monopolist" manufacturer. IMHO it would be good to have SqueakVM/CogVM decently running in Android (>= 2.1).
In the long term I think Android will win this "championship". +1... but don't say it too loudly; it might wake up the fanboys ;)
"Toon" == Toon Verwaest <toon.verwaest@gmail.com> writes:
In the long term I think Android will win this "championship".
Toon> +1... but don't say it too loudly; it might wake up the fanboys ;) As long as the UI designers in the open source camp are few and far between (yes, "gimp", I'm looking at you), I don't think Apple has much to worry about. Apple products will continue to interoperate better and *look* better than anything the open source community can muster. -- Randal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095 <merlyn@stonehenge.com> <URL:http://www.stonehenge.com/merlyn/> Smalltalk/Perl/Unix consulting, Technical writing, Comedy, etc. etc. See http://methodsandmessages.posterous.com/ for Smalltalk discussion
Em 26-05-2011 14:40, Randal L. Schwartz escreveu:
(...) Toon> +1... but don't say it too loudly; it might wake up the fanboys ;)
As long as the UI designers in the open source camp are few and far between (yes, "gimp", I'm looking at you), I don't think Apple has much to worry about. Apple products will continue to interoperate better and *look* better than anything the open source community can muster.
Agreed about "look&feel" and interoperability. But there are lots of things that go beyond that (otherwise Microsoft would be reigning souverain in the field of mobile and that's just not the case). Regarding Apple, long term is not all that safe for the company relies strongly in the ingeniousness of Mr. Jobs and everybody knows what happened when he left the company... Comparing platforms, iOS is a Kawasaki Ninja 1000cc of the mobile devices OS and Android is something between a Honda CG125/250cc. But there's a huge market for small Hondas :) Anyways, I just don't think that leaving Android aside is a good idea. CdAB
"Casimiro" == Casimiro de Almeida Barreto <casimiro.barreto@gmail.com> writes:
Casimiro> Anyways, I just don't think that leaving Android aside is a Casimiro> good idea. And on that, we can agree. -- Randal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095 <merlyn@stonehenge.com> <URL:http://www.stonehenge.com/merlyn/> Smalltalk/Perl/Unix consulting, Technical writing, Comedy, etc. etc. See http://methodsandmessages.posterous.com/ for Smalltalk discussion
About Android: A Squeak version by Andreas Raab (proof of concept) made it to the market, but seems to be unmaintained. Is there any information, about how it was done, what the caveats are and how this might leverage smalltalk development on Android? The poor man's android application in Pharo might be using a seaside image and facilitating the android browser displaying content, the bigger approach being a vm that provides a snappy interface to something like Dr. Geo. Once the initial pain (once again, how was the Android UI to Morphic done - polling java to a squeak image?) is gotten over with, there is some potential - if we could keep the memory footprint down a litte ;-)
Em 26-05-2011 19:28, Markus Fritsche escreveu:
About Android: A Squeak version by Andreas Raab (proof of concept) made it to the market, but seems to be unmaintained. Is there any information, about how it was done, what the caveats are and how this might leverage smalltalk development on Android? It is operational minus input methods and other things... I haven't tried many things since it's difficult to work without input methods working properly. Anyways Andreas did a lot of work (understood how to fit image to Android constraints, etc) and whoever upgrades what's already done must be thankful to him. The poor man's android application in Pharo might be using a seaside image and facilitating the android browser displaying content, the bigger approach being a vm that provides a snappy interface to something like Dr. Geo. Once the initial pain (once again, how was the Android UI to Morphic done - polling java to a squeak image?) is gotten over with, there is some potential - if we could keep the memory footprint down a litte ;-)
Talking about Andreas, unfortunately Balloon3D is not working on pharo... I'm developing some little stuff that's using B3D... :( Not portable at the moment.
Maybe it's because we feel Objective-C to be family. :) Maybe because of Apple's early connection to Parc and Smalltalk, who knows. On Thu, May 26, 2011 at 5:51 PM, Casimiro de Almeida Barreto < casimiro.barreto@gmail.com> wrote:
Em 26-05-2011 09:02, Igor Stasenko escreveu:
On 25 May 2011 20:45, Hilaire Fernandes <hilaire.fernandes@gmail.com> wrote:
I have no idea how hard it is to pass the apple check. It can indeed temper any effort doing a theme.
I think that i can express Apple's policy using single statement: - why you using language X for your project, if you can implement same in Objective C.
:)
Clearly Apple has a restrictive police on development and commercialization of products for the iOS platform. It is not related only to development language/environment but also content. Apple censors and decides what can and what cannot be put in "their" (should be their customers) tablets/phones/iPods (kind: no porno, no political, no certain kinds of violence, etc).
One thing that amazes me is that currently there are two contestants to the "Tablet & Smartphone World Grand Prix": iOS and Android but people in the SqueakVM/CogVM communities are centered only around a single "monopolist" manufacturer. IMHO it would be good to have SqueakVM/CogVM decently running in Android (>= 2.1).
In the long term I think Android will win this "championship".
My 2¢
CdAB
Hilaire
(...)
mmm... I'm seeing dr. geo (never did before, he), and I think a version of it as a single screen, like a game, who can popup cocoa dialogs (for copyright, etc.) could work. More or less a "mix" of first approach with John's approach. It can work for Dr.Geo but that is still a specific case... El 25/05/2011, a las 1:22p.m., Hilaire Fernandes escribió:
A third option could be to build a polymorph theme for iPAD. This is an intermediate option I discussed a bit with Bert, to do a DrGeo port for iPAD. Frankly speaking if someone is interested to work with me on that direction we may be able to produce something in our range and useful for the community at large.
Hilaire
Le 25/05/2011 18:01, Esteban Lorenzano a écrit :
Well... I'm going to use this post to talk a bit about Pharo in iOS, because it is more complex than "having a vm working" But first, a summary of where we stand: 1) The Stack VM is working with iPhone/iPad, but needs some minor adjustments (some tuning). One problem here is that I didn't integrate it to CMakeVMMaker (and as a consequence, to hudson), so build it is not a trivial task. But I will, as soon as some one jump and say "hey, I'm going to use it, for real!"... or as soon as I can find a free afternoon... it is planned (and I worked a little on this), but it is not a priority right now :) 2) The Cog (I mean, the jitter) will never work on iPad/iPhone, because of the apple license (clause 3.3.2) and because of the security sandbox policy. But I think the Stack VM can do a pretty job. No, I'm not going to prepare this just for recreational purposes because I do not have the time, and the community work I do should be spent in things the community can use... and I think that Eliot (who is, in fact, the one who can do this, I'm just a builder) will think similar :)
So... if we have a vm running on iOS, why there is no a legion of fellow pharoers taking over the appstore?
Well... because it is not enough. There are several problems, besides the vm working or not (to be fair, the interpreter vm works on iphone since at least two years, and John is the only one who succeed on pushing some nice smalltalk apps into the appstore). The main problem is that our morphic world is ok for desktop working, and some times for desktop commercial apps (like those of pinesoft), but it just can't be used to create real apps for the iPhone/iPad market. There are some exceptions, like some eToys work and probable the developing of games like "tic-tac-toe" or so... (I mean: graphic games who can be done with morphs). But as a general rule, you can't do a real app in pharo/squeak who runs in the iPhone/iPad and can be sold in the appstore. To overcome this problem, what John does is to create the full view in Cocoa, and "plug" the model to pharo/squeak images, using pharo as a module of a cocoa application. This can be done for several apps (and the fraction calculator is an example), but fails when you want a deeper interaction (because of the cost, not just in "programming time" but also the "translation time" between the cocoa app and pharo: it is just not good enough to bring a cool user experience (at least in all my experiments it was the case)
There is another possible approach, who I think is the better in the long way, and that is what I was doing with Deimos project: using a bridge to construct, in pharo, real cocoa UI objects... the advantages with this are obvious. Nevertheless, there are also some problems with this approach: 1) last year I was working on this, and apple changed a clause. The result can be expressed as if they executed: 'deimos become: shit'. Months after they review the policy, but I was concentrated on Mars (the desktop equivalent to Deimos). I will continue this, but first I want to finish Mars, and also I need to solve the problem below: 2) there are also a performance problem with the ObjectiveC plugin and callbacks. In all my experiments, I never went below 70ms executing a callback from cocoa to pharo (and that's necessary, for example, to fill tables). The minimum time needed to have a cool "scroll" effect on tables is 40ms. Of course, iPhone 4 is better than 3gs... but the problem remains. The real thing is that ObjectiveC plugin relies on a semaphore communication model, and that's not good enough. So... I think the better approach here is to port FFI-Callback plugin (latest work of Eliot) to iOS. FFI-Callback plugin uses a whole different approach, who can overcome this performance issues (and some other who's not the case mention here).
So... yes... I would love to finish this soon. But right now, other issues are top in priotity, and I just can't promise a release date. (Of course, the stackvm for iphone will be compiling on hudson some time soon... before ESUG for sure)
hope this can explain all the status... :)
cheers, Esteban
El 25/05/2011, a las 11:56a.m., Igor Stasenko escribió:
On 25 May 2011 16:22, Steve Wirts <stevewirts@gmail.com> wrote:
Hi All, Sorry if this topic has been covered in a previous email, I couldn't find anything conclusive so I'm posting it for my own clarity. I am a smalltalk programmer at heart but have been working in java at a java shop for sometime. Recently there's been a very strong directive from management to "get everything working on an iPad". I see a great opportunity to introduce pharo at the moment but need a way to deploy to iPad/iPhone devices. I'm not a c programmer and am overwhelmed at the thought of trying to build a cog vm for ios devices.
Is there a binary package of cog vm for iPad/iPhone available somewhere?
Ask Esteban! :)
-- Best regards, Igor Stasenko AKA sig.
-- Education 0.2 -- http://blog.ofset.org/hilaire
On Wed, May 25, 2011 at 11:22 PM, Hilaire Fernandes <hilaire.fernandes@gmail.com> wrote:
A third option could be to build a polymorph theme for iPAD. This is an intermediate option I discussed a bit with Bert, to do a DrGeo port for iPAD. Frankly speaking if someone is interested to work with me on that direction we may be able to produce something in our range and useful for the community at large.
We put some information with Hilaire about using Pharo for Sugar here: http://code.google.com/p/pharo/wiki/PharoForSugar I didn't have time to continue, but i guess the page should be update with your last work. Regards, -- Serge Stinckwich UMI UMMISCO 209 (IRD/UPMC), Hanoi, Vietnam Every DSL ends up being Smalltalk http://doesnotunderstand.org/
the regulation of apple makes that JIT are forbidden. Now you can run pharo Cog Stack (no JIT) interperter. We would support any speed improvements that help in that direction. We are planning to clean event handling and other in that perspective. Stef On May 25, 2011, at 4:22 PM, Steve Wirts wrote:
Hi All,
Sorry if this topic has been covered in a previous email, I couldn't find anything conclusive so I'm posting it for my own clarity. I am a smalltalk programmer at heart but have been working in java at a java shop for sometime. Recently there's been a very strong directive from management to "get everything working on an iPad".
I see a great opportunity to introduce pharo at the moment but need a way to deploy to iPad/iPhone devices. I'm not a c programmer and am overwhelmed at the thought of trying to build a cog vm for ios devices.
Is there a binary package of cog vm for iPad/iPhone available somewhere?
so a version purely for inhouse/research/educational use isn't likely to be created? On Wed, May 25, 2011 at 10:57 AM, Stéphane Ducasse < stephane.ducasse@inria.fr> wrote:
the regulation of apple makes that JIT are forbidden. Now you can run pharo Cog Stack (no JIT) interperter. We would support any speed improvements that help in that direction.
We are planning to clean event handling and other in that perspective.
Stef
On May 25, 2011, at 4:22 PM, Steve Wirts wrote:
Hi All,
Sorry if this topic has been covered in a previous email, I couldn't find anything conclusive so I'm posting it for my own clarity. I am a smalltalk programmer at heart but have been working in java at a java shop for sometime. Recently there's been a very strong directive from management to "get everything working on an iPad".
I see a great opportunity to introduce pharo at the moment but need a way to deploy to iPad/iPhone devices. I'm not a c programmer and am overwhelmed at the thought of trying to build a cog vm for ios devices.
Is there a binary package of cog vm for iPad/iPhone available somewhere?
so a version purely for inhouse/research/educational use isn't likely to be created?
Why not. But so far what is the microprocessor of ipad if this is not an intel then it means that the assembly generation has to be done and our plate is full. Stef
On Wed, May 25, 2011 at 10:57 AM, Stéphane Ducasse <stephane.ducasse@inria.fr> wrote: the regulation of apple makes that JIT are forbidden. Now you can run pharo Cog Stack (no JIT) interperter. We would support any speed improvements that help in that direction.
We are planning to clean event handling and other in that perspective.
Stef
On May 25, 2011, at 4:22 PM, Steve Wirts wrote:
Hi All,
Sorry if this topic has been covered in a previous email, I couldn't find anything conclusive so I'm posting it for my own clarity. I am a smalltalk programmer at heart but have been working in java at a java shop for sometime. Recently there's been a very strong directive from management to "get everything working on an iPad".
I see a great opportunity to introduce pharo at the moment but need a way to deploy to iPad/iPhone devices. I'm not a c programmer and am overwhelmed at the thought of trying to build a cog vm for ios devices.
Is there a binary package of cog vm for iPad/iPhone available somewhere?
participants (11)
-
Casimiro de Almeida Barreto -
Esteban Lorenzano -
Hilaire Fernandes -
Igor Stasenko -
Markus Fritsche -
merlyn@stonehenge.com -
Richard Durr -
Serge Stinckwich -
Steve Wirts -
Stéphane Ducasse -
Toon Verwaest