[ Dart hits a bull's-eye for Web developers, InfoWorld columnist Neil McAllister says. | Peter Wayner reveals what's hot in scripting languages. | Subscribe to InfoWorld's Developer World newsletter for the key news and insights on software development. ]
InfoWorld: Is that what you mean by Dart being a language for structured Web programming?
Bak: It is. You can write small applications in Dart, but as the applications scale, you can start adding types to your programs, and that really specifies a programmer's intent. So if you make a module, you can see exactly how you're supposed to use the module based on the types you have specified in the interface and you can also check that in Dart. If you really have big teams working on the same source space, this actually makes a lot of sense.
InfoWorld: What is the benefit of Dart running on both clients and servers?
Bak: It's like any other language that runs on both sides. You can decide late in the process whether you want the code to be running on the server or in the client. You have to bear in mind that if you are writing Web applications, clients are very different. You have a Web browser on a desktop, which is very powerful, and you can put a lot of logic on the client side. But if you run a mobile phone, which also has a Web browser, you often want to off-load some of that code on the server side. If the application, both on the server side and the client side, is written in the same language, you have the option of deciding where the code should execute.
InfoWorld: How hard is it going to be for developers to learn the Dart language?
Bak: I think it will have a great impact if you write big applications because you get more structure. It's hard to predict what kind of impact because whether programming languages are accepted has a lot to do with taste and if people like it, basically, and that's really hard to predict. We have to make sure that we can display what we have, and we have good implementations of it so people can try it out and if they like it, I'm pretty sure it will be adopted. There's been, of course, language experts who have been questioning some of the design decisions, but most programmers -- mainstream Web programmers -- have been fairly positive toward it. Everything has been open source, so that's a very liberal license. You can just take it and use it without any restrictions. It's a BSD license.
InfoWorld: What is the difference between Google Dart and Google Go?
Bak: Google Go is a systems programming language, which is useful for back-end services, whereas the Dart language is used more for the client side. And one way to make that difference very clear is that Dart is also a scripting language, so the Dart VM will read any source code directly and execute it without any sort of apparent compilation process. Whereas if you use Go, you will have to compile it just like if you program it in C or C++.
InfoWorld: What is the status of Dart at this point?
InfoWorld: What is the client platform support for Dart?
InfoWorld: Is Dart is going to be applicable to Android programming?
Bak: Not right now it's not. Right now it's only out in this open source repository, and it's not integrated into Android at this point.
InfoWorld: So it might be in the future?
InfoWorld: Is there anything else you wanted to say about Google Dart?