On Thu, Dec 11, 2014 at 12:01 PM, kilon alios <[hidden email]> wrote:can you resize the pharo windows ? I saw you struggle with it thereIt 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-pcThat's where I want Pharo to run.PhilOn Thu, Dec 11, 2014 at 10:09 AM, [hidden email] <[hidden email]> wrote:Pharo on iPad.
Le 10 déc. 2014 21:26, "dboeren" <[hidden email]> 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 BackVisible Performance ImprovementsMob: +32(0) 478 650 140 | Fax: +32 (0) 70 408 027Blog: http://philippeback.be | Twitter: @philippebackHigh Octane SPRLrue cour Boisacq 101 | 1301 Bierges | BelgiumPharo Consortium Member - http://consortium.pharo.org/Featured on the Software Process and Measurement Cast - http://spamcast.libsyn.comSparx Systems Enterprise Architect and Ability Engineering EADocX Value Added Reseller
Free forum by Nabble | Edit this page |