Dissecting Silverlight
Two new technologies from Microsoft should be on the radar of every Rich Internet Application developer. The first is Silverlight 1.0, a canvas-like control which is programmed by browser JavaScript. It’s fairly light weight (1.4M download), and works in all major browsers on Windows and MacOSX (no Linux yet). It is currently in beta.
The second is Silverlight 1.1, which builds on 1.0 by adding a virtual machine for running logic inside the plug-in. This is much closer to the approach used by the Flash player. The advantage of bundling your own language and runtime is that developers are isolated from browser inconsistencies (it’s hard work to write a Javascript program that will run in all browsers now). Silverlight does Flash one better by supporting more than one language (currently C#, VB, JavaScript, and Python). The Flash player is limited to ActionScript.
Silverlight 1.1 is not quite as light weight (4.3M download with the current alpha) because it does a lot more than 1.0. Let’s take a look inside the install packages to see what you get. I’ll just look at the Windows version because that’s what I have.
Silverlight 1.0
Silverlight 1.0 installs only two files:
agcore.dll (2.2M installed) - This is the core ActiveX control that is responsible for Silverlight rendering and events, including audio and video decoding.
npctrl.dll (460K) - A wrapper for agcore.dll that makes it run inside Firefox.
Full story @ source.