Animorphic ST (Strongtalk) released!

Brian T Rice water at tunes.org
Tue Jul 16 23:08:19 UTC 2002


Hello,

On Tue, 16 Jul 2002, Dan Ingalls wrote:

> Nathanael Sch=E4rli <n.schaerli at gmx.net> wrote a while back...
> >Besides the code itself, the webpage also contains the "History" of this
> >ST implmentation, which is pretty interesting.
>
> [Yes, I heard about this independently from David G].
>
> This is definitely a landmark piece of work, and it's great to have it fi=
nally out in the open.
> Ever since talking with Gilad & Co. about it, there has been this little =
plex in the back of my mind along the lines of "Squeak meets StrongTalk".
> The first component in this gestalt is that I think type annotations are =
useful as documentation, and I have always felt (and often said) that a Sma=
lltalk with optional types would be an ideal computing environment.  It rea=
lly fills a hole in the metasystem.
> The second component is a sort of BOBW (best of both worlds) notion that =
with the cool aspects of Squeak and its numerous multimedia facilities, tog=
ether with what is arguably the fastest execution engine going, we could at=
 least have a lot of fun.
> The third component has to do with applying the Squeak philosophy to what=
 otherwise appears to me as a daunting project.  The Animorphics VM is (I w=
ould suggest) a programming tour de force.  I have always been paralyzed wh=
en considering such projects (and this goes for, eg, the SELF compiler, too=
), by the thought that I would burn out simply dealing with so much complex=
ity all in C or worse (if you can imagine that ;-).  The whole idea behind =
Squeak (well, not the whole of it, but the implementation approach) was tha=
t we could write it in the language we already knew, and it would be easy t=
o understand and test.  I don't see why we couldn't do the same thing for a=
n engine similar to the Animorphics VM (Ian and I have also talked about do=
ing the same kind of thing for Jitter).
>
> Some questions are:
>
> =09Would the system benefit from being cast into StrongTalk?
> =09=09and how much work would this be?
>
> =09Would anyone care if it ran 10 times faster?
> =09=09and how much work would this be?
>
> =09Would it be fun to do?
>
> Comments?

I would answer positively to all of these questions.

Lee Salzman (the Squeampiler author) and I have been working on a
multi-method dispatch language taking Smalltalk's syntax with Self's
object model. Type declarations and argument dispatches are optional on
each block argument, and methods are simply named closures. We have found
a lot of code to translate from Squeak very well.

What we are doing with it right now is moving from a bare interpreter to a
self-hosted VM with (eventually, but at a high priority) a dynamic
compiler that will be able to do all of the interesting things discussed
in StrongTalk, etc. while being totally self-hosted. Lee is working on the
implementation, and I on the user space. I am cross-breeding Morphic with
the interface of the Symbolics Genera operating software, CLIM, using the
advice of some CLIM developers. This will be Free software, so both
Jecel's Self/R effort and Squeak should be able to benefit, even if you
find the particular language unsettling.

We only started this project in late March, and have now amassed about 10
thousand lines of working code, with probably about a year's more
development work to reach 'industrial' state. Once our basic bootstrap is
done, we'll publish the code and some tutorials and documentation
explaining how to use the system.

> =09- Dan

Brian Rice
~




More information about the Squeak-dev mailing list