At 4:44 PM +1000 7/2/00, Karl Goiser wrote:
G'Day,
I'm sorry. I just feel so stupid at not being able to get my point of view across.
My argument is not that Squeak shouldn't be identical across all platforms. It should - that's what I'm saying!
*snip*
So, if people *must* have native widgets in Squeak, surely the best thing to do would be to abstract them as far as possible via some api so that the same code would work on other platforms?
I'm not suggesting that the code should be identical across platforms. I'm suggesting something far deeper -- that the execution of the code should appear identical across platforms. For many applications, a general transliteration, if you will, of a least-common-denominator GUI model, is probably a good thing. For the stuff I deal with (multimedia and games), that doesn't cut it. Until you can assure me things will look the same regardless of the machine I am running, I continue to have to "port" the application from format to format to make up for the nuances lost by the LCD GUI model.
Unfortunately, the devil in user interfaces is precisely the nuances. Consider Jef Raskin's remarks in this regard from his book, The Humane Interface. When you simplify the model, you simplify what I can do with that model. Sure, the broad strokes cross over. For my purposes, however, that will not be enough, and I must write the strict details once for every platform on which it runs.
Just like in Java Just like in Tk/Tcl Just like in Python/Tkinter
Its not awful (how can so many successful languages be wrong)? Its just not "write once/run everywhere."
Squeak is.