Check out this c64 emulator in Silverlight 3:
http://channel9.msdn.com/posts/Dan/Honorable-Mention-MIX09-S...
Market penetration is a -huge- aspect of coding in the browser. It's the reason Flash won't die; Adobe is really, really good at pushing the plugin on people. If people can't run your code, your code doesn't matter.
Language usage is important to developers. Javascript has the benefit of having lots of developers already using it, and requiring -nothing but a browser- to get started with it. Adobe has noticed that being developer friendly is really important, and has been making strides with Flex, making Flash development seem more familiar to traditional devs. Silverlight simply doesn't get it (http://silverlight.net/getstarted/). The platform doesn't matter if you don't have programmers building for it.
Speed is important, but only to a point. Of course, Silverlight and Flash both beat the pants off of Javascript for practically every benchmark. The important thing to remember is that Javascript doesn't need to beat them in a test, it simply needs to be fast enough.
You've mentioned that Silverlight's "tech" is better. I'm not sure what that is supposed to mean.
Google's move to push Javascript makes a lot of sense. Building another Silverlight doesn't make much sense when it is failing in every category that actually matters.
Last I checked, this is not true.
In my darker days, I spent six months on a contract developing a third party full screen media browser for Windows Media Center Edition. Windows MCE is basically a giant IE window, and your apps are web pages.
The architect benchmarked flash vs javascript at the time, and javascript won hands down for the type of work performed.
Using bubblemark in webkit, I get 58 FPS in flash vs 98 FPS in DHTML.
I wouldn't be surprised if Flash beat Javascript in IE nowadays, but in that case Flash is just faster on some platforms.
Chrome's V8 engine is awesome. I never realized it.
Silverlight apps can look just as polished as desktop apps. This is not true with DHTML/Javascript.
No, you cannot. You can use .Net and language implementations that run on top of .Net. This includes IronRuby (dead?), IronPython, and JScript.
> Silverlight apps can look just as polished as desktop apps. This is not true with DHTML/Javascript.
This is not a feature that consumers care about.
You should really try MobileMe, or 280slides.
There are a number of other web apps written in Sproutcore and Cappuccino that feel exactly like desktop apps, without an ounce of flash or silverlight.
Anything to back this up?
The CLR is not that great. For instance, it can't optimize call-sites of virtual methods ... the JVM does it, Chrome's V8 probably does it too.
And yes, you can use IronPython and IronRuby ... but in case you haven't checked them out ... those are awfully slow (mildly put) compared to the reference or the JVM implementations (go figure).
If you can optimize the call-sites of virtual methods (a problem which isn't solved by static-typing), there's nothing inherent in static typing that guarantees faster code, except the handling of primitives ... numbers mostly, because if numbers are boxed, math is slow. But when you're building a VM from scratch (like what Google is doing with the V8) you can workaround that too (see Lua for a shiny example). Well ... there are other things too, like making classes/interfaces dynamic, but this isn't such a big problem).
What I find interesting about V8 ... even if its designed only for Javascript, the type-system itself is dynamic enough to make V8 a good target for other dynamic languages. And a modified application server could compile something like ...
<script language="ruby">
document.find('div.item').each do |item|
item.append("<i>hello world</i>");
end
</script>
... to Javascript without much trouble.And V8 probably has certain constructs that are executed faster, so you could have a Java to Javascript compiler (like GWT) that uses those static-types that you love to generate faster Javascript.
And with HTML5, you can have your cake and eat it too (assuming Microsoft plays along, or Firefox/Safari/Opera/Chrome become much more popular ... not so hard to imagine given IExplorer's flaws, the army of developers preferring modern browsers and UE's antitrust policies).