Scripting in Silverlight / Smalltalk’s Opportunity

December 7, 2010

The first .Net preview SDK was released (IIRC) in November of 2000. And I very much liked the idea of a language agnostic virtual machine, so I immediately downloaded it and began some simple projects.

By 2005, the platform and tools had matured considerably. There was a new executable format for deploying applications in browsers (called XBAP at the time, since renamed to XAP) which later became the basis for the Silverlight cross-browser plugin. About this time, I started developing Vista Smalltalk to take advantage of the new possibilities.

Then Microsoft began two projects (IronPython, IronRuby) of their own to bring dynamic languages to the .Net platform and to Silverlight using a new runtime called the Dynamic Language Runtime (DLR). There were plans to port JScript (JavaScript) and Visual Basic to the DLR.

And now in late 2010, here is the situation.

Windows Vista was very late and very buggy, but its successor, Windows 7, has been a notable success with over 240 million copies sold at the present time. Silverlight finally runs well on all the major browsers and is being widely deployed. It is also the foundation for Windows 7 phone. So there is now a huge (and growing) ecosystem for .Net/WPF/Silverlight based applications.

And Microsoft seems to have abandoned all development of dynamic languages for the .Net platform.

You can develop in C# or VB for .Net using the free Visual Studio Express IDE’s (about 3.5 GB). But, to deploy to Silverlight, you need the commercial Visual Studio Professional IDE. These are tools designed for (wealthy) professional programmers working in corporate teams.

I am reminded of Digitalk’s Smalltalk/V 2.0 for Windows about 1992. Developing for 16-bit Windows 3.1 in “C” was a horror show (NEAR and FAR pointers, etc). In Smalltalk, it was just “Window new open” and a new window would magically appear.

Somehow, Microsoft has taken a good idea (Silverlight) and made it unnecessarily complex to develop applications (“code behind”, “partial classes”, XAML, etc – YUCK).

I want the simplicity of Smalltalk for the Silverlight ecosystem; that’s what Silver Smalltalk is designed for.

Think of each Silverlight-enabled browser as a 2010 version of the Xerox Alto and imagine the Internet (with Comet-style instant messaging) as a scaled-up version of PARC’s Ethernet network.

Then just add Silver Smalltalk. And we can share objects over the network just like they did in the 1970’s (at PARC).

Warp speed back to the future.



4 Responses to “Scripting in Silverlight / Smalltalk’s Opportunity”

  1. Andy Burnett Says:

    Hi Peter
    I am delighted to see your project come back to life. I am really looking forward to using SST.

    Out of curiosity, have you managed to solve the non-local return problem? I know you felt that this was going to be a problem in earlier versions.

    • Hi again Andy,

      That was an issue in Gwt-Smalltalk when translating Smalltalk code to JavaScript code.

      Here it is not an issue because I am running my own custom VM which duplicates Squeak functionality.

  2. Carl Gundel Says:

    Did you duplicate the Squeak VM behavior by translating the Slang sources to C#?

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: