Ship it with Squeak

Paul Fernhout pdfernhout at kurtz-fernhout.com
Mon Jun 26 08:50:22 UTC 2000


Andrew-

I appreciate your comments on experience with Python/TK vs. Squeak
(especially on the Mac).

I think the issues you raise in regards to cross-platform GUI are right
on, and a major reasaons I am interested in Squeak over Python. Squeak
has a better philosophy -- just put up a bitmap and let Squeak do
whatever it wants with it -- whereas Python tries to interface with
native widgets or widgets produced by TK or wxWindows or whatever other
library. I agree that Python lacks a cross-platform GUI (although
wxWindows is nice) -- although I do think that for purposes of text
processing, file manipulation, and simple internet utilities Python is
often a good cross-platform choice.

However, I think it is possible the internals of TCL event loop
implementation could perhaps be "borrowed" without having to pull in the
other problematical features. We're only talking a few hundred lines of
C code here at most I think. I believe it likely that many of the issues
you raise have more to do with TK cross-platform problems or issues with
the Python/TK interface than issues with TCL event handling itself. It
is my understanding that raw TCL on the Mac is pretty stable, even if TK
support is rough.

-Paul Fernhout
Kurtz-Fernhout Software 
=========================================================
Developers of custom software and educational simulations
Creators of the Garden with Insight(TM) garden simulator
http://www.kurtz-fernhout.com

"Andrew C. Greenberg" wrote:
> 
> >Right you are. The Tk/Tcl event model is nicely done, and cross platform
> >as well. The code is freely available under a BSD license. Even if you
> >don't "steal" it, it certainly serves as a good source of inspiration.
> >
> >It seems to me that Tk/Tcl style events could readily be adapted to Squeak,
> >serving as a fairly general external event system and making things like
> >AsyncFile unnecessary.
> 
> Its been a little over a year, maybe two, since I worked in
> Python/Tkinter, and I can freely say that it was nothing less than
> squirrelly on MacOS.  There was almost no uniformity from platform to
> platform, and performance was abysmal.  I had a serious application I
> was trying to press through in Python for several months, with only
> nominal success.  (Frequent memory leaks -- periodic random crashes
> --  undebuggable freezes -- the works -- all in a putative OODL!)
> 
> Indeed, that was when I met Squeak at a Hacker's conference -- Ted
> Kaehler demoed it, and I had the entire app (a multimedia game)
> within three weeks, running pixel for pixel identically across MacOS,
> Unix and Windows.  (I wrote it in Windows at my office, but delivered
> it on my wife's iMac for her birthday).
> 
> The process was flawless, debugging information amazing, and I fell in love.
> 
> You can have Python/Tkinter -- I trust it got much better since the
> mess with which I was working -- but the Smalltalk environment was
> just fine for my purposes.
> 
> Admittedly, the expectations of UI uniformity for games are
> substantially less than for other systems, but I was nothing less
> than thrilled with the flexibility of Squeak for simultaneous
> on-the-metal and abstract-from-the-universe coding.
> --
> Andrew C. Greenberg             acg at netwolves.com
> V.P. Eng., R&D,                 813.885.2779 (office)
> Netwolves Corporation           813.885.2380 (facsimile)
> www.netwolves.com
> 
> Please use werdna at mucow.com instead of werdna at gate.net





More information about the Squeak-dev mailing list