12 September 2011 Dart, Google Robert Muehsig

Seit einigen Tagen schwirrt eine geleakte (?) Email von Google durch das Netz, welche einige interessante Punkte zur Zukunft von Javascript beinhaltet. Es gibt zudem auch eine Ankündigung der Vorstellung der neuen Sprache Dart auf der GOTO, welche am 10. Oktober beginnt (via Heise)

Die Probleme von Javascript

Javascript hat aus Sicht Googles (und nebenbei einigen anderen) einige Probleme. Dazu zählen Performanceprobleme, aber auch Probleme mit dem Tooling für große Projekte.

Javascript verbessern oder ein Neuanfang wagen

Google selbst sieht zwei Optionen: Die bestehende Javascript Implementierung langsam verbessern, wobei der Prozess sich lange hinziehen kann oder eine neue Sprache für das Web erstellen: Dart (in der Mail heisst es aber noch Dash)

Googles Anstrengungen im Javascript Umfeld

In der Mail wird betont, dass Google weiterhin ECMAScript (insbesondere die nächste Stufe Harmony) weiterhin unterstützen möchte. Dart soll sich auch zu Javascript kompilieren lassen, sodass ältere Browser auch unterstützt werden sollen.

Googles Ziele

Mit Dart möchte Google einen offenen neuen Standard schaffen, welcher die Probleme von Javascript beseitigt:

Dash is designed with three perspectives in mind:

   - Performance -- Dash is designed with performance characteristics in
   mind, so that it is possible to create VMs that do not have the performance
   problems that all EcmaScript VMs must have.
   - Developer Usability -- Dash is designed to keep the dynamic,
   easy-to-get-started, no-compile nature of Javascript that has made the web
   platform the clear winner for hobbyist developers.
   - Ability to be Tooled -- Dash is designed to be more easily tooled (e.g.
   with optional types) for large-scale projects that require
   code-comprehension features such as refactoring and finding callsites.
    Dash, however, does not require tooling to be effective--small-scale
   developers may still be satisfied with a text editor.

Das große Ziel:

The goal of the Dash effort is ultimately to replace JavaScript as the
lingua franca of web development on the open web platform.

Googles andere Tools

Google hat bereits einige Tools im Javascript Umfeld erschaffen (GWT/JSCompiler) sollen wohl in Richtung Dart gehen.

Dash Clientseitig & Serverseitig

Dart soll die “Front-End” Sprache in Googles Welt werden, welche sowohl vom Client ausgeführt werden soll als auch vom Server (geht vermutlich in die Richtung Node.js)

Will Dash run on the Server?  Android?
Yes, but short term we are focused on the client.

Was passiert mit Go?

image

Go is a very promising systems-programming language in the vein of C++.  We
fully hope and expect that Go becomes the standard back-end language at
Google over the next few years.   Dash is focused on client (and eventually
Front-end server development).  The needs there are different (flexibility
vs. stability) and therefore a different programming language is warranted.

Googles IDE “Brightly” – eine Dart Anwendung?

Google scheint eine Cloud IDE intern zu benutzen, welche wohl auch Dart unterstützen soll und auch in der Sprache geschrieben sein wird – ob man diese IDE jemals sieht wird sich allerdings zeigen:

How does this affect our cloud IDE (Brightly)?
Brightly will enable building any web application in V1 using today’s
Javascript plus the additions in Harmony.  As soon as it is ready, Brightly
will support Dash as well.  We expect that the more prescriptive development
aspects of Brightly that will come on line in the future will be more Dash
focused.

We expect Brightly itself to be the first application written in Dash.

Alles in allen: Spannend

Ich bin gespannt, was Google da zaubert und ob sie die anderen Browserhersteller überzeugen können da mitzumachen (wo doch gerade Microsoft Javascript für sich entdeckt hat ;) ).

Interessantes Detail noch: Mitverfasser der Email und der Dokumente zu Dart ist unter anderem Brad Abrams, welcher noch vor gut einem Jahr bei Microsoft das Silverlight Team geführt hatte.


Written by Robert Muehsig

Software Developer - from Saxony, Germany - working on primedocs.io. Microsoft MVP & Web Geek.
Other Projects: KnowYourStack.com | ExpensiveMeeting | EinKofferVollerReisen.de