[squeak-dev] Winds of change

Lawson English lenglish5 at cox.net
Fri Aug 7 05:52:04 UTC 2009


Lawson English wrote:
> I'm trying to learn enough Squeak to allow it to be used as an 
> external plugin to Second Life. At this point, all it does [will do] 
> is send/receive packets via IPC from an existing "gridproxy" app that 
> can selectively intercept/inject standard SL packets on their way 
> to/from the SL server.
>
> This should allow for some interesting prototyping for SL. A more 
> powerful implementation  might [someday] use an interface to the 
> internal events of the second life client.  Which leads me to the 
> question: what kind of events should be defined to allow a reasonably 
> robust interaction of an external app and Squeak?
>
> It would be trivial enough to send "make new window" to the event 
> handler, assuming that such an event existed and to receive simple 
> mouse movement/updates for Squeak-side processing (e.g. in an 
> offscreen drawing buffer), but what about more complex and 
> sophisticated interactions required for implementing things like a 
> Squeak class browser in the GUI of the main application? What events 
> would be needed to handle that level of interaction?
>
> It seems to me that it might be easier to go with the standalone 
> implementation of Squeak talking to the main app via high level events 
> defined for these things, than try to rewrite the Squeak VM to work as 
> an embedded VM that needs to directly call the host app's API.
>
>
>
> What kind of events would be useful in this scenario? Any thoughts, 
> suggestions, references to already implemented examples, etc?
>
> Thanks,
>
Mark Fulmer just gave me one of those Homer Simpson DOH!!! moments:

The Second LIfe interface already has a webbrowser that you can open 
inside Second LIfe. Serve a localhost webpage from Squeak and provide 
some user interface goodness in it, and you have a more or less full GUI 
interface to Squeak from within Second Life.


The same pattern would work with any application that can handle 
localhost webpages. No need to define some complicated user interface 
with Squeak. All you need is the webpage and some way of passing raw 
commands/data to/from your target app.

Lawson



More information about the Squeak-dev mailing list