Glad to hear is much better than I assumed. About iOS vs Androids, I have
both. Each one focus on different things. Neither really excites
personally.



On Thu, Dec 11, 2014 at 3:44 PM, p...@highoctane.be <p...@highoctane.be>
wrote:

>
>
> On Thu, Dec 11, 2014 at 12:01 PM, kilon alios <kilon.al...@gmail.com>
> wrote:
>
>> can you resize the pharo windows ? I saw you struggle with it there
>>
>> It also looks like its crawling there , which iPad is this , which
>> generation ?
>>
>
> This is an iPad2. Pure Morphic is fine, what is not is Nautilus. I guess
> with AltBrowser it would be fine.
>
> I've had a game I wrote for kids (internal stuff done for my wife's kids
> help practice) and it was fine with drag and drop and all.
>
> Now for games on iOS I do use Monkey-X. But I'd love to have a Pharo set
> of classes that would be gaming specific. We could have very fast plugins
> for all the game engine and script it with Pharo. Kind of what one does
> with Lua.
>
> The touch paradigm is different from what one can do on a desktop. It is
> not that Pharo has to work on an iPad. What would be nicer is to have an
> image running on it and to which one would connect remotely for remote
> coding.
>
> What I was interested in with the bluetooth keyboard project is to see how
> to have a kind of dynabook style thing. But Apple has crippled a lot of
> things, like for an external keyboard support like this one has to use
> internal undocumented APIs for the gsEvents and this will prevent anything
> to go to the AppStore. And then one sees apps like iAWriter which has such
> keyboard support, that's weird.
>
> Also, as a result, you realize that there is no ESC key on an iPad, that
> you miss a ton of keys that you take for granted on a desktop.
> Also, all keyboard scancodes are different in various brands and it is a
> true ball of knots. No wonder Apple has one supersimplified protocol for
> input that prevents your from doing powerful keyboard based things. Meh.
>
> Long story short, Android looks much better in that regard, and that's
> where I am looking at these days.
>
> I've got a new Galaxy Alpha Octocore thing and frankly, it blows any
> iPhone 6 out of the water. I am done with iOS I'd say.
> When going to places, there are so much more Android devices than
> iDevices... These Android things are like the beige boxes of the 90's.
> You know who won at the time.
>
> So, next holidays, I'll have a look at CogDroid from JB. When one can buy
> a full quad core stick PC with 2G of RAM and 8G of storage for less than
> $50, well, choice is clear.
>
> An old example:
> http://www.laptopmag.com/reviews/mini-pcs/mk808-android-mini-pc
>
> That's where I want Pharo to run.
>
> Phil
>
>
>>
>> On Thu, Dec 11, 2014 at 10:09 AM, p...@highoctane.be <p...@highoctane.be>
>> wrote:
>>
>>> Pharo on iPad.
>>>
>>> http://youtu.be/7MNsUiCc5FQ
>>> Le 10 déc. 2014 21:26, "dboeren" <boer...@gmail.com> a écrit :
>>>
>>> Now that my image is working properly again and the fires have been put
>>>> out,
>>>> I wanted to introduce myself a bit better...
>>>>
>>>> My name is David Boeren.  I first learned Smalltalk back in college many
>>>> years ago, we used Smalltalk V in an object oriented programming class I
>>>> took which was first-half Smalltalk, second-half C++.  This would be
>>>> about
>>>> 1992 I think?  In recent years I've mainly been using Java, with
>>>> occasional
>>>> Python dabblings.  I remember installing Squeak once or twice over the
>>>> years, but to be honest it felt a bit clunky, perhaps this was just an
>>>> early
>>>> primitive version or whatever.
>>>>
>>>> Recently, I've been getting the itch to try out some different
>>>> languages.  I
>>>> was kind of looking at Scala or Clojure, one co-worker suggested
>>>> Erlang, and
>>>> so forth.  But after doing a brief review I ended up coming back to
>>>> Smalltalk which even after all these years still stands right up with
>>>> the
>>>> cutting edge I think.  Sure, there are a few things that I think would
>>>> be a
>>>> little different if it were designed today like tuple support or
>>>> whatever,
>>>> but it feels like the right choice for something I'm going to use
>>>> mainly for
>>>> "fun" projects and the interactive environment is awesome.
>>>>
>>>>
>>>> One thing I wanted to ask about is the status of getting Pharo running
>>>> on
>>>> iOS (or at least iPad).  I found some old posts but nothing much within
>>>> the
>>>> last couple of years.  I know there were app store policy issues in the
>>>> past
>>>> but I think that Apple has opened things up a bit since then, you can
>>>> now
>>>> get Pythonista in the app store, or Codea.  Is there still an obstacle
>>>> or is
>>>> it just something that hasn't been gotten around to yet?  I'd love to
>>>> get it
>>>> running on my iPad Mini and be able to transmit code back and forth
>>>> between
>>>> there and my laptop to work on it wherever I'm at.
>>>>
>>>>
>>>> Second, I'm running into an oddity and I'm not sure what I'm doing
>>>> wrong or
>>>> whether this is a bug of some sort, this has to do with trying to
>>>> replace
>>>> unicode characters in a string which seems like it should be a
>>>> straightforward operation.  Here is my code:
>>>>
>>>>         "Fetch the raw JSON data from dtdb.co"
>>>>         response := 'http://dtdb.co/api/cards/' asUrl retrieveContents
>>>> asString.
>>>>
>>>>         "Clean up the data a bit to make it a little more regular"
>>>>         response := response copyReplaceAll: 'null' with: '""'.
>>>>         response := response copyReplaceAll: '\u2022' with: ','.
>>>>         response := response copyReplaceAll: '\u009e' with: 'e'.
>>>>
>>>> Basically I'm just pulling some JSON data and then doing a few string
>>>> replacements to make the data suit my needs.  The first one works.  The
>>>> second one works.  Since the third one ALSO uses a \uXXXX code I would
>>>> expect it to work too, but it does not - the accented characters are
>>>> still
>>>> there.
>>>>
>>>> To get a bit more visibility into this, I copied the CopyReplaceAll code
>>>> from SequenceableCollection into a scratch class method and adding some
>>>> Transcript output:
>>>>
>>>> copyReplaceIn: aString All: oldSubCollection with: newCollection
>>>>         "Answer a copy of the receiver in which all occurrences of
>>>>         oldSubCollection have been replaced by newCollection "
>>>>
>>>>         | startSearch currentIndex endIndex |
>>>>
>>>>         Transcript show: 'start' ; cr.
>>>>         startSearch := 1.
>>>>         [(currentIndex := aString indexOfSubCollection: oldSubCollection
>>>> startingAt: startSearch) > 0]
>>>>                 whileTrue: [
>>>>                         Transcript show: 'Found at index ' ; show:
>>>> currentIndex ; cr.
>>>>                         endIndex := currentIndex + oldSubCollection
>>>> size - 1.
>>>>                         aString := aString
>>>>                                         copyReplaceFrom: currentIndex
>>>>                                         to: endIndex
>>>>                                         with: newCollection.
>>>>                                 startSearch := currentIndex +
>>>> newCollection size].
>>>>         Transcript show: 'done' ; cr.
>>>>         ^ aString
>>>>
>>>> A minimal test seemed to work:
>>>> HelloWorld copyReplaceIn: 'R\u00e9my Lapointe' All: '\u00e9' with: 'e'.
>>>>
>>>> start
>>>> Found at index 2
>>>> done
>>>>
>>>> Testing this with the real data worked too:
>>>> HelloWorld copyReplaceIn: ('http://dtdb.co/api/cards/' asUrl
>>>> retrieveContents asString) All: '\u00e9' with: 'e'.
>>>> start
>>>> Found at index 22379
>>>> Found at index 22500
>>>> done
>>>>
>>>>
>>>> However, when I went back to using the regular copyReplaceAll:With:
>>>> method
>>>> it does not work and I'm not sure why.  When it executes this:
>>>> aString indexOfSubCollection: oldSubCollection startingAt: startSearch
>>>>
>>>> The value comes back as 0 even though it's the same data from
>>>> 'http://dtdb.co/api/cards/' asUrl retrieveContents asString (I added a
>>>> "self
>>>> halt" to be able to step into the method and view the variable values),
>>>> and
>>>> I'm not sure what the difference is.  There shouldn't be a limit on the
>>>> size
>>>> of the collection, should there?  The whole thing is around 116k which
>>>> is
>>>> big but not ridiculously so.  It is however big enough that the debugger
>>>> can't show the whole value, or at least I haven't found a way to do so.
>>>>
>>>>
>>>> And last, is there a good video tutorial for the Pharo beginner on how
>>>> to
>>>> use the various browsers, debugger, tools, etc... that come with
>>>> Pharo?  I
>>>> would like to start learning more about the best ways to use these in my
>>>> development processes.  I'm also having a lot of trouble finding the
>>>> correct
>>>> classes and message for what I want to do, searching online w/ Google
>>>> often
>>>> seem to turn up outdated information (or for a different smalltalk
>>>> flavor)
>>>> and it can take a while to figure out the correct way to do things.  Is
>>>> there a good central reference for the APIs somewhere?  I know that you
>>>> can
>>>> search in the browser but I usually don't know the name to search for.
>>>> It
>>>> would be good to have a handy reference detailing how to do all the
>>>> commonplace stuff.
>>>>
>>>> Thanks!
>>>>
>>>>
>>>>
>>>> --
>>>> View this message in context:
>>>> http://forum.world.st/New-Pharo-user-some-questions-tp4795325.html
>>>> Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
>>>>
>>>>
>>>>
>>
>
>
> --
> ---
> Philippe Back
> Visible Performance Improvements
> Mob: +32(0) 478 650 140 | Fax: +32 (0) 70 408 027
> Mail:p...@highoctane.be | Web: http://philippeback.eu
> Blog: http://philippeback.be | Twitter: @philippeback
> Youtube: http://www.youtube.com/user/philippeback/videos
>
> High Octane SPRL
> rue cour Boisacq 101 | 1301 Bierges | Belgium
>
> Pharo Consortium Member - http://consortium.pharo.org/
> Featured on the Software Process and Measurement Cast -
> http://spamcast.libsyn.com
> Sparx Systems Enterprise Architect and Ability Engineering EADocX Value
> Added Reseller
>
>
>

Reply via email to