Google announces Dart programming language
Google has built a brand-new programming language for ‘structured web programming, one that appears to be suited to browser-based apps. Two of the search giant’s engineers will discuss Dart, Google’s new language, at the Go to international software development conference next month. News of the new language was posted to the Goto website. There aren’t yet any technical details on Dart but the bios of the two Googlers presenting at Goto strongly suggest a bent towards programming for the web and browser
Technical Overview
Dart is a new class-based programming language for creating structured web applications. Developed with the goals of simplicity, efficiency, and scalability, the Dart language combines powerful new language features with familiar language constructs into a clear, readable syntax.
First off: the language comes as a technology preview, it is not yet in Chrome, it comes with syntax familiar to Javascript developers, Erlang-style/Actor-style concurrency. Comes with support to write applications for the iPad.
Update: clarification: the demoed iPad version was Dart code cross compiled to Javascript and executed
Characteristics:
- Class-based single inheritance with interfaces
- Optional static types
- Reified Generics
- Real lexical scoping
- single threaded
- Familiar syntax, Javascrpt-like
Syntactic features
- class based
- operator overloading
- String interpolation “Hello ${foo}”
- lambda syntax: (x) => x
Types in Dart:
- optional
- type annotations have no influence on compilation or execution: if arguments or variables have a wrong type, the code still works if the code is correct. The tooling will issue warnings.
- reified Generics
Interfaces:
- Interfaces with Factory implementations
- interface person factory PersonFactory
- interfaces have constructors; call to it will go to factory class declared in Interface
Concurrency with Isolates:
- each Isolate is a conceptual process, Erlang-style
- no sharing
- communication via message passing
- isolates have one or more ports
- Isolates can run in parallel
The language is not done yet, and the team is looking for input. The language is currently not in Chrome.
Dart execution:
- DartC compiles Dart to plain Javascript
- a dedicated Dart VM can execute Dart
- a third option: Dart comes with tools to create an image of the heap of an application and package it into an optimized format which can be loaded nearly instantly, reminiscient ofSmalltalk’s image system.
Tools:
- based on Eclipse source but not an Eclipse plugin Update: clarification: this statement was made in the keynote, however the editor and tools are indeed Eclipse plugins.
- auto completion support with types
A technology preview version of Dart and the tools is available for download now, and at the Google Code Dart project.
Get involved
- Other pages in the Dart website (dartlang.org), such as tutorials, sample code, articles, and the latest draft of the Dart Language Specification
- Dart project with issue tracker and source code
- Dart discussion group (misc at dartlang.org)
You may like to read this also....
Post comment
Search in this website
our sponsors
latest comments
- c programme language on Implementation limitation of c programming language
- codebreaker on How to access/unblock songs.pk in india?
- Esta on Free android applications
- PCB Design on Embedded Jobs and Careers | embeddedcareers.com
- JIGAR PATEL on List of all standard version of c language
Find us on Facebook
Top Authors
Find us on stackoverflow
Polls
My Bookmarks
- Audio/video Recorder & player application based on MATLAB
- check dependency of your binary
- defination of all standard c programming language function
- Great Question-Answer on c programming
- know what your c code means
- Limition of c programming language
- List of all version of c programming language
- Online c compiler
- php freelancing work
- some more stuff on C programming language
- Volatile Keyword in Embedded System
- Write Android application in c language