Dans cette interview Lars Bak donne 2 raisons : la maintenabilite et la recherche de la performance.
[...] it was also very clear that web applications were getting bigger and bigger. Inside Google, we have Gmail and other big apps and it’s basically many, many lines of JavaScript and it’s very hard to maintain big applications in JavaScript.
So big companies like Google, they put some structure on top of JavaScript just to be able to maintain the many lines of code and we have the JS closure compiler at Google, so you can actually annotate JavaScript with pseudo types. You can check that and stuff like that. So it’s clear that JavaScript was reaching the limit of how big applications can write – at least that’s how we saw it.
And so, we were looking at coming up with a better language that’s more declarative and would be easier to maintain if you have big applications. And at the same time, we want to make sure we could solve two problems with JavaScript; one is the startup time which is pretty pathetic right now. And then the peak performance — of course we want to make it faster too.
You know the way that JavaScript started up in the browser you reading source code and you have to read another source code before you really can get started and then that also means that if you start up a big web application, it can take half a second or more to load the application.
[...] So we envision that when it comes to start up performance, we have a factor of 10 compared to JavaScript and peak performance should be at least twice as fast.
Il repond aussi a la question pourquoi pas une VM a multi-langage ? (avec bytecode donc comme la JVM ou la VM .NET)
Well the problem is it doesn’t work. [...] several companies have tried to do multi language VMs and the problem is that [...] there’s always compromise you have to make. [...] if you are implementing C# or Java, you will have basic types, right? You will have ints and doubles and longs [...] in JavaScript you have all (削除) updates (削除ここまで) [ndlr : objects] everywhere and it’s very hard to reconcile these two worlds. So if you do a VM based on basic types it’s pretty much impossible to make it run fast if you want to implement JavaScript — and the other way around basically.
[...] if you try to make an implementation of JavaScript, it will be falling into the category we talked about before – dog slow — it’s just not fast.
[^] # Re: « impropre à la création d'applications web complexe » ?
Posté par tanguy_k (site web personnel) . En réponse au journal Normalisation du langage Dart de Google par l'Ecma. Évalué à 6.
Dans cette interview Lars Bak donne 2 raisons : la maintenabilite et la recherche de la performance.
Il repond aussi a la question pourquoi pas une VM a multi-langage ? (avec bytecode donc comme la JVM ou la VM .NET)
Et la suite de l'interview ici : http://javascriptjabber.com/008-1-v8-and-v8-and-dart-with-lars-bak-and-kasper-lund-bonus-content/