Morphic and windows

mds zenporcupinegrind at breathe.com
Thu Jul 29 11:40:27 UTC 2004


Marcin,

 From what I can tell, Squeak is far from having even prototype native 
widget support; obviously, there are hacks using FFI as was mentioned 
before, but to be honest, if you use squeak, you're using the 
traditional Smalltalk paradigm of a self-contained environment - at 
least that's the way I see it.

if you're after a stable, mature and free Smalltalk with quasi-native 
widget support (more on that in a second), check out VisualWorks 7.2 
non-commercial.

VW doesn't have native native widgets, but instead, emulated portable 
widgets, so you can build windows that look and feel like WinXP or 
MacOSX's Aqua, and use the same programme across multiple platforms - 
Linux, Win32, Macintosh etc. However, these look and feel pretty damned 
nice (there have been many advances in recent releases) and are not 
only usable but look good too. In the Linux world, the user is used to 
varying widget-sets. In the Win32 world, I think the VW apps hold their 
own, and you can hardly (if @ all) tell that they're 'emulated'.

In addition, VW doesn't have the same sort of closed environment as 
squeak - it's less "weird" to the end user; you simply rename the VM to 
your-app.exe, your image to your-app.img and it's almost transparent 
that this programme is being distributed using a fundamentally 
different sort of technology.

Lastly, the image stripping facilities are pretty impressive, even 
going as far as replacing walkbacks with dialog errors, thus shielding 
any problems from the user without confusing him terribly. In other 
words, some of the traditional 'evils' of stripping an image are 
lessened, and locked down distribution is improved.

All in all, it's definitely worth checking it out.

Personally, I was thinking of constructing a Native Widget class tree 
for Squeak, but that's still on paper at this stage. The basic idea was 
to have a portable tree that interfaces to platform-specific plugins, 
with a common API. I'm not sure how much progress Tim, John & co have 
made in this field themselves, but clearly we're still @ a development 
stage.

Don't get me wrong - the only Smalltalk I use at the moment is Squeak, 
and I've grown pretty fond of the Morphic environment, so I'm not 
advocating VW as a all-things-to-all-men alternative. But if your task 
is native, or near-native widget support, and you don't want a 
Smalltalk environment to be visible the user, then VW may well be the 
way to go. Besides, Morphic without the encompassing Smalltalk 
environment would probably lose not only its dynamism but also its 
sensibility - I'd venture that Squeak's strength is its interplay of 
objects, rather than the objects in isolation themselves.

Apologies if I've rambled @ too great a length about a different 
dialect!

Hope that helps,
regards,
Marc

On Thursday, July 29, 2004, at 11:26  am, Marcin Tustin wrote:

> On Wed, Jul 28, 2004 at 11:15:53AM -0700, Ned Konz wrote:
>> On Wednesday 28 July 2004 6:53 am, Marcin Tustin wrote:
>>
>>> 1) Is it possible to get morphic to create a window outside of the 
>>> squeak
>> window
>>
>> Probably not the way you want to do it. At least, not easily. And not 
>> out of
>> the box.
>
> 	The snipped sections plus tasty hints by developers on this list is 
> probably enough to keep me about, especially given the comedy errors 
> I've had from GNU Smalltalk.
>
>
>>> than the one on the squeak swiki, which instructs one to start using
>>> classes that no longer come with squeak?
>>
>> There are a number of Morphic tutorials. Which one are you referring 
>> to, and
>> would someone like to update it?
>
> 	I was thinking of http://pbl.cc.gatech.edu/cs2390/227, which I'll 
> happily update once I get into the swing of things. One other 
> question: Are there any plans to allow squeak to be configured to use 
> a native widget-set, or is that even already possible by providing a 
> relatively simple set of bindings? (I do of course mean that the 
> squeak side is simple - I'm well aware that the native side is likely 
> to be nasty).
>
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: text/enriched
Size: 4074 bytes
Desc: not available
Url : http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20040729/a42349af/attachment.bin


More information about the Squeak-dev mailing list