[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Help-smalltalk] Re: GNU Smalltalk
From: |
Bonz |
Subject: |
[Help-smalltalk] Re: GNU Smalltalk |
Date: |
Tue, 20 Feb 2001 19:34:29 +0100 |
> One more thing, how do you feel about GNU Smalltalk (as in) do you
> feel it should keep it's "blue-book" form or should it be (in future)
> extended beyond that while still keeping backward compatibility.
Well, it has already been extended. The VM is completely renewed when
compared to the Blue Book (just consider closures and a customized
bytecode set that the peephole optimizer can exploit), and the newest
versions have a JIT (even though it is not completely integrated with
the garbage collector as yet). As to syntax, {...} arrays, block
temporaries, #{...} and bytearray literals are not in the Blue Book
but are in GNU Smalltalk. The class library is much more complete and
based on the ANSI standard, including exception handling in the 1.95.x
versions.
> I assume you live in Italy
Yes, I do.
> Tell me, how come there is no proper gnu Smalltalk site ? just FTP ...
> I wouldn't mind volunteering designing something proper and even
> hosting it.
Time. That's why. There is a (still empty) wiki at
swiki.theansweris42.com/gst (thanks to Cees de Groot). If you
volunteer to redesign the http://www.gnu.org/software/smalltalk
site, you'll do good.
> Object model of blox is pretty "flat" this is probbably due the way TK
> handles events and general TK operation.
It is not flat... (I don't think so at least). It goes like
BEventTarget
Blox
BWidget
BExtended
BButtonLike
BColorButton
BProgressBar
BDropDown
BDropDownEdit
BDropDownList
BPrimitive
BButton
BToggle
BRadioButton
BDialog
BEdit
BForm
BContainer
BViewport
BList
BText
BCanvas
BWindow
BTransientWindow
BMenuObject
BMenu
BPopupMenu
BMenuItem
BCanvasItem
...
Maybe you confused the Blox hierarchy with the Browser's own widget
hierarchy, which is more flat (Blox used to be flat too, I refactored
it). The Browser implements something like MVC with the M being
the Browser and Inspector classes, the V being Blox, and the C being
the Primitive hierarchy, rooted below GuiData (which implements a
powerful variation on the dependancy mechanism).
> I fear changing one messaging model to another will
> add another layer of complexity which will prove to be
> harder to maintain.
If Gtk is properly factored, I am confident it won't. Even Swing is
implemented on top of the AWT.
> It is enough to see what happened to Java and AWT 1.0 ...
> because of bad OO model nobody is using it anymore
> as it turned out to be too inflexible and not extensible at all.
The language itself was not mature and inflexible -- Swing's Listeners
would be impossible to use without inner and anonymous classes.
Anyway, let's start implementing the GTK bindings, then we'll see!
--
|_ _ _ __
|_)(_)| ) ,'
-------- '-._