<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">
<TITLE>Message</TITLE>
<META content="MSHTML 6.00.6000.16809" name=GENERATOR></HEAD>
<BODY>
<DIV><FONT face=Arial size=2>
<DIV><FONT face=Arial><FONT size=2>Okay, so <SPAN
class=321271219-07032009>my</SPAN> project of the moment is to package a simple
game app developed and running<BR>in Squeak into a lightweight and
easily-distributable runtime. This isn't really a<BR>request for help or
anything, and might be off topic for the list, (let me know if so)<BR>but might
be of interest to some. More important to me :-) I might get some
feedback<BR>that sends me in a better direction. So, if I sound like I
need to know something,<BR>feel free to hit me with it.<SPAN
class=321271219-07032009> (Also, btw, none of this should be seen as
criticism; I'm</SPAN></FONT></FONT></DIV>
<DIV><FONT face=Arial><FONT size=2><SPAN class=321271219-07032009>kind of
falling in love with Squeak system, and my point here is to try to find
ways</SPAN></FONT></FONT></DIV>
<DIV><FONT face=Arial><FONT size=2><SPAN class=321271219-07032009>to spend more
of my time doing more of it)</SPAN></FONT></FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Options:</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=Arial size=2>- Stripped Squeak image: I've picked up
hints of various attempts at this (Dependency-<BR>walker type things, and
scripts that disable developer tools). Seems that this is a<BR>hard
problem though, between type-inferencing where variables can take on arbitrary
types,<BR>and reflection, and dynamic evaluation, and so on. So, for now
at least this is kind<BR>of a cumbersome and unwieldy way to deal with app
deployment.</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV> </DIV>
<DIV><FONT face=Arial size=2>I need to look into the VM generation stuff.
There's the whole thing about the Slang<BR>subset and C code generation of
Smalltalk code, so there's already-existing knowlege and<BR>code to build
on. </FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=Arial size=2>Seems like it would be a good fit to go a level
higher, and translate a bigger subset of<BR>Smalltalk into a higher-level
language like C#, or maybe Java or C++. You'd be able to<BR>automatically
translate a lot more of your Smalltalk codebase, and for the parts where<BR>you
can't or don't want to (say to avoid bringing along the whole Morphic thing)
you'd<BR>have a much better fit for plugging in a replacement
library.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><BR><FONT face=Arial size=2>RBParser/RBFormatter</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>So how much of Smalltalk libraries/image could be
auto-dumped into C# classdefs? I'm<BR>looking at the RBParser/RBFormatter
stuff now, and liking it -- nice little Visitor<BR>pattern for walking the parse
nodes, and really a pretty small set of implementation<BR>methods to do the code
generation. At a quick look it doesn't look hard to make a<BR>C# code
generator out of it.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>UI libraries</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Anything currently running in squeak is probably
going to be doing UI the squeak way<BR>-- which seems to mean one of several
different, apparently kind of monstrous, packages,<BR>the which I haven't even
begun to get a good handle on. All that Morphic (for example)<BR>stuff
might be kind of cool, and might be necessary in a seriously cross-platform
<BR>environment like Squeak, --but what about something like what Newspeak
apparently did?</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>I've only skimmed this so far, but apparently
they'd got running to some extent at least<BR>a UI system that uses native
widgets for speed and simplicity. Their Hopscotch browser<BR>shows dynamic
switching between Morphic and their native-style UI.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><BR><FONT face=Arial size=2>So here's what I'd like to do. I think I
heard that Newspeak got open-sourced due to<BR>lack of funding. So, I'm
thinking that if I bring the Newspeak UI stuff into Squeak,<BR>and use it as the
UI layer to develop in Squeak, I get the benefits of the
rapid-<BR>prototyping/RAD Smalltalk style, using all the tools available
therein. And I get the<BR>ability (maybe) to take the resulting Squeak
application code, run an auto-translator<BR>on it to generate for example C# or
Java versions of the application-specific classes,<BR>and link that code against
a (so far non-existing) library that mimics the Newspeak
UI<BR>classes.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><BR><FONT face=Arial size=2>Anybody got thoughts on all this, or 'already
been solved' kinds of comments? <BR>--A little bit of experimenting around
in VW and in Dolphin Smalltalks shows that<BR>they at least have some kind of
auto-deployment, at least for Windows. Am I missing<BR>the Squeak version
of that, or am I right in thinking it's something that needs to<BR>be
done?</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><BR><FONT face=Arial><FONT size=2>Kevin<SPAN class=321271219-07032009>
Kelley</SPAN></FONT></FONT></FONT></DIV></DIV>
<DIV class=Section1>
<P class=MsoAutoSig style="TEXT-ALIGN: right" align=right><A
href="http://kelleysoft.com/">kelleysoft.com</A></P>
<P class=MsoAutoSig style="TEXT-ALIGN: right" align=right><?xml:namespace prefix
= o ns = "urn:schemas-microsoft-com:office:office" /><o:p> </o:p></P></DIV>
<DIV> </DIV></BODY></HTML>