On Mon, Sep 15, 2014 at 12:31 PM, Craig Latta <craig@netjam.org> wrote:

> ...one real problem with the Squeak/Pharo UI is the lack of native
> windows.�� There is an old project Graphics-External-Ffenestri but
> AFAICT it isn't being used.

�� �� ��I'm using it, on Mac OS so far (Windows and Ubuntu Linux are the
other host platforms I care about at the moment).

> But there /is/ a really good prototype of a native window system
> above Squeak done by Vassili Bykov in Newspeak.

�� �� ��Hoooold on there... :)�� Does this mean that Vassili tried Ffenestri
and found it unusable? If so, why? Details, please.

I don't want to talk for Vassili, but he had done the prototype for Pollock, the new window system for VW that was squandered by Cincom management. ��In this he architected full conversion between native and non-native windows, both dynamically and over snapshot. ��So when he came to implement the GUI for Newspeak he used that experience. ��I don't see the same architectural support in ��Graphics-External-Ffenestri it doesn't even support snapshot and resume on the same window system. ��Here's the relevant extract from HostWIndowProxy's class comment:

"This is a proxy for a Host OS window and as such is considered a disposable item. When an image is restarted the client must recreate suitable instances from the information they hold."

So I expect Vassili didn't even think of using it. ��Vassili's work doesn't need any VM support beyond the ability to ask the VM to /not/ respond to GUI events. ��It is based on the FFI and uses callbacks to receive events. ��In any case Vassili's work is the best candidate that I've ever seen for a proper native windows integration for Smalltalk systems that ave a history of non-native windows.


�� �� ��thanks,

-C

--
Craig Latta
netjam.org
+31 6 2757 7177��(SMS ok)
+ 1 415 287 3547��(no SMS)





--
best,
Eliot