[squeak-dev] Re: The future of Squeak & Pharo (was Re:
[Pharo-project] [ANN] Pharo MIT license clean)
Göran Krampe
goran at krampe.se
Mon Jun 29 22:59:22 UTC 2009
Hi Dan!
(Watch out - rambling ahead)
Long time no hear. :)
Dan Ingalls wrote:
> Good people -
>
> Whatever the impetus, it's good to see this recent spate of
> self-examination.
Yep, indeed.
> When I look back on the early days, we had a cycle where we would use
> the old system for all it was worth (even with ugly hacks), exploring
> some current set of initiatives, and *then* we would fall back to clean
> things up and integrate what we learned in the latest push.
>
> Maybe that's what's happening now, but I feel the absence of some of
> those big challenges that motivate and reward real progress (not to make
> little of the current efforts). These could include...
>
> Take advantage of multicore processors and associated
> multi-thread OS's in our VM design(s).
Yeah, I am unsure if Cog has anything in this area. We do have the Hydra
base, and personally I am quite impressed that Huemul actually has
native POSIX thread == Process!
I presume the "perfect" setup is green Processes running on a pool of
native threads. Thus preserving the "light weight" of Process and still
be able to utilize cores.
I also would like to note that while it would be COOL to be able to
scale on cores - the *reality* is that most apps we write in Squeak that
*needs* to scale is typically web apps. And you scale web apps
horisontally using multiple VMs and a load balancer, no big deal.
So it doesn't really matter how cool it would be - it is not a "killer"
feature IMHO.
But the scalability of Erlang would open up new frontiers. :)
> Demonstrate real ease of use in tapping that new
> dimension of performance. Linda and E are relevant.
>
> Press at least one good JIT design through to completion
> document it, and keep it alive on every platform.
I presume Cog is our hope? The latest "news" in this area is that Eliot
mentioned he is looking closer at the JIT in Factor (factorcode.org) and
even considers porting it! And lots of JIT libs around these days,
Nanojit in Tracemonkey, libJIT etc etc.
But one thing is true - performance *kicks ass*. We may go on and on
about how "unimportant" performance is but darnit, it really is a killer
feature if we had a REAL fast VM whupping the Pyhon/Rubys. ;)
> Make it easy to produce Squeak apps for the iPhone
> and similar platforms for which it seems so perfect.
Mmmm, most such platforms have their "own" UI which you really need to
adhere to. I think simple interpreters that very easily can play with
external libs have the upper hand here. Think Python.
> Bring Squeak to life in browsers.
> OMeta + V8 + Canvas = Squeak everywhere, including
> behind firewalls and where installation is prohibited
Cool yes. Killer feature? Nope, don't think so.
> Get serious about security. Take another look at ESqueak
> and figure how to make it just a bit simpler
Doesn't make me drool. :)
> Along the same lines, make it easy for Squeak to rule
> the cloud.
Ah, *that* one is more like it. Not sure HOW, but i do agree that the
Cloud (in whichever shape or form) is coming.
One thing I have noted as a consultant is that almost EVERY customer now
runs virtual hardware. In Sweden almost always VMWare. And this actually
benefits us - the customer just wants an "appliance". They often don't
care what it is written in.
If Squeak could offer something unique in this arena... but I fail to
see what that could be :)
> Each of these has high potential impact, and it would be nice to have
> made some real progress in one or two areas before doing a major merge
> or rewrite. What if you decide to eliminate shared globals; wouldn't
> this be a great time to include that rewrite? What if shared variables
> turn out to be a great way to synchronize multiple threads in the VM;
> wouldn't this be a good time to fold that in? Etc.
>
> So this may be the time to reorganize everything, but it also looks to
> me like there is nothing in the way of making some *bold* progress right
> now, and it's likely that the wider perspective achieved in the process
> might inform an even better next system.
>
> That said, don't forget there are good and committed people on both
> sides of this discussion, and your first priority should be how to
> maximize the community. FWIW I recommend face-to-face discussion. And
> beer.
Beer is good. Too bad we are so darn spread out.
> - Dan
regards, Göran
More information about the Squeak-dev
mailing list
|