The Dart Developer Summit is your forum for meeting the Dart engineering team, Googlers using Dart, and your fellow Dartisans. Our community has told us they want to hear how you are using Dart. What is your cool new pub package? How did you use Dart on the client or server? What are you tips and tricks?
Our sessions are live streamed and recorded to help you get the word out. The summit is April 28th-29th in San Francisco, California. Call for Proposals closes on Jan 30th!
See you there!
If you might be interested in joining us, feel free to add yourself as a "guest" to this Google+ event. Doing so is a non-binding indication of interest and we will set up a proper registration form soon. We will share more details about the event as they become available.
In V8, Irregexp compiles a regular expression by parsing it and converting it into an intermediate automaton representation, which V8 then analyzes, optimizes and finally directly generates native machine code. The V8 implementation requires a native-code backend for each supported host architecture. Indeed, at the time of writing V8 has 7 distinct Irregexp backends.
In Dart, Irregexp initially compiles a regular expression, just as in V8, by parsing, converting, analyzing and optimizing it. Finally Dart generates IR (intermediate representation) instructions. This IR is the same representation used for ordinary Dart code and so we use the existing Dart optimizing compiler to further optimize the code and generate native machine code.
The Dart implementation has been tested against the same benchmark suite as developed for V8’s Irregexp. Here, the Dart VM is within a factor of two from V8. For short-running regular expressions, such as parsing URLs, Dart is actually faster due to a very fast entry to the generated matching code.
There are several reasons we don’t hit the same peak performance as V8 across the board. For example, Dart spends more time on compiling regular expressions because, after building the Dart IR, we further optimize the code. Also, V8’s hand-tuned machine-code backends are expertly tailored to executing regular-expression code on each individual platform. The machine code Dart produces is not as efficient because the existing optimizing compiler can’t make the same assumptions about properties of the code (such as what to hold in registers and what not to). We will be looking at these issues, and due to the single shared Dart backend, improvements become improvements to the Dart VM as a whole.
We hope you enjoy Dart's new and improved regular expressions. Look for the new implementation starting with Dart 1.9, which is now in the developer channel.
Follow-up to yesterday's videos. This time I push the changes to the browser automatically, and fire a custom event that the web application can listen to, so it can redraw when code changes.
I'll try to build up the courage to listen to myself speak and make a proper video with a voiceover. But not today.
Code is here: https://codereview.chromium.org//847573003.
If you know people around Aarhus who are - reshare.
See you there.
- University of AarhusComputer science, 1997 - 2003
- Holstebro Gymnasium1994 - 1997
- Google Inc.Software engineer, 2006 - present
- Esmertec AGSoftware engineer, 2004 - 2006
- OOVM A/SCo-founder, 2002 - 2004
How I Learned to Stop Worrying, and Love Dart - Matt Briggs
An interview with the author of Dart for Absolute Beginners
There are many books about the Dart language and libraries, but most assume some knowledge of programming. For people that are brand new to
Dart 1.8: library improvements and experimental support for enums
Would you like to try out Dart’s upcoming support for enums? In Dart Editor under Tools > Preferences > Experimental you can “Enable Enums S
Running Dart server applications on Google Cloud Platform
Today you can develop and deploy Dart server applications that run on the Google App Engine Managed VMs beta. The productivity of the Dart l
Dart 1.7: easily share and use command-line applications built with Dart
The Dart language, libraries, and runtime make it easy to create command-line applications. In fact, all of the core tools in the Dart SDK –
Dart plugin for Sublime updated with many new features
Many of our developers enjoy using lightweight text editors, but still want to use features traditionally found in powerful IDEs. Today, in