Google Starts to Detail Dart 219
MrSeb writes "After waiting for more than a month, Google has unveiled its mysterious Dart programming language... and you're going to kick yourself for getting so preemptively excited. Dart is a new programming language that looks like Java, acts a lot like Java, runs inside a virtual machine like Java... but ominously, it also has a tool that converts Dart code into JavaScript. Language-wise, its features are unlikely to knot your panties: there are classes and interfaces, it is optionally typed (you can switch between untyped prototype code to an enterprise app with typing), the syntax is very lackluster, there's a very strong concurrency model, and Google is promising lots of juicy libraries that can be leveraged by developers. Basically, the language isn't meant to be exciting: in Google's own words, it's designed to be 'familiar and natural' — and indeed, if you write Java or C# code, Dart will probably feel very approachable."
Could be really cool in about 5 years or so. (Score:2, Insightful)
When and if every browser on the market supports it.
Until then it is just interesting.
Re: (Score:3)
Re: (Score:3)
There are several dozen languages that can be cross-compiled to JavaScript today. So far, none of them have become popular as replacement for JS in the browser.
Re: (Score:2)
Because all of those were never ment to run directly in the browser.
Can you explain how a language is designed any differently if it is meant to run directly in the browser? And what precludes, say, Python or Lua from being used that way?
With dart there is hope that one day browsers will support it without compilation
Good luck waiting for IE and Safari to do that.
yup. it's like the internet is dying (Score:2)
because of all the shitty languages used to develop it.
it's going the way of Sun . . . just losing tons of users every day.
Re: (Score:2)
Which Google will add to Chrome once enough cross-compiled apps are out there. Then they get a huge speed boost and it forces everyone else to add a dart runtime to their browsers or lose the benchmark wars.
Re: (Score:2)
Except that the browser benchmarks will be written in JS.
Very few people will be willing to take the performance hit that the cross compile might cause. If it is any slower they will keep living with JS for a good long time.
Re: (Score:2)
Re: (Score:2)
Doesn't CoffeeScript already do cross-compile from native to JavaScript, with quite a few proponents and examples of complex usage working fine?
No idea as CoffeeScript is something on my to-look-at list, and seems to be difficult to use on Windows.
Re: (Score:2)
That's partially true. In fact you can write JS style coffeescript and the js output of the compiler is just about as long as cs input. However coffeescript adds some nice syntax sugar that can translate into more complicated javascript. List comprehensions is a good example of this. The generated code isn't very complex and you could write it yourself with a little bit of effort but you don't have to. That's the main selling point of coffeescript. It takes a simpler syntax and translates it to the co
Re: (Score:2)
And you really think google would make it so you have to tweak it for IE?
Re: (Score:2)
Enlighten me (Score:2)
.... but ominously, it also has a tool that converts Dart code into JavaScript.
Sounds pretty mundane to me- What's so ominous about converting to JS?
Re: (Score:2)
Re: (Score:2)
Re: (Score:3)
In the worst case, this could lead to everybody having to implement Dart, and the new de-facto standard scripting language being controlled by Google, who, running several of the world's most popular websites, can hardly be considered neutral.
Re: (Score:2)
Dart->JS might be slower than Dart, but I don't see any reason to expect that it'll be an order of magnitude slower than just writing it in JS would be, since much of it won't be replacing stuff that would be handcrafted in JS, but stuff that would be built on several abstraction
Re: (Score:2)
I don't think anyone has yet suggested writing "Dart-only websites." From the blog:
"We plan to explore this option" could be interpreted in that light, but I take it to mean that they're still in a pl
Re: (Score:2)
Writing stuff that will work an order of magnitude slower on JS browsers could seem like a sensible lazy solution to many
well, that's possible if they happen to do a terrible implementation of the compiler, but the intent would that it's faster as it can output optimized JS code.
It's not a bad thing (Score:5, Informative)
The world actually needs more "enterprisey" languages. If you want experimental, fun languages, your choices are actually very good, what with ruby, python, and a ton of functional languages. In terms of safe and good for scalable, risk-averse environments, there's pretty much just Java and C#. Java seems to have accumulated so much inertia, it doesn't add new features anymore. As for C#, the problems dealing with Microsoft are well-known to the slashdot community already.
A little more competition in that arena would do the industry some good.
Re: (Score:3)
Exactly. In terms of "heavy enterprise", meaning the real back ends of big financial companies, airline conglomerates and insurances...They only let you touch their valuable cobol systems through java, mostly 1.3 (1.4 if you're lucky). The java 5 route (and thus 6, 7, 8) is too risky because of Oracle. Any new development in that sector is good news. Although some java integration is necessary (mostly connectors and MQ systems), because these are tested for 10+ years and that counts more than anything else.
Re: (Score:2)
If by "risk averse", you mean "will only use what at least 1/4 of the rest of the people doing the same thing are using because it needs to be 'established'", then you'll never have more than a couple of options at best.
If you mean any other sense of "risk averse", well, you can probably add Erlang to that risk, and several other things.
In any case, it'll take quite somet time before any newly-created lan
Re: (Score:2)
Re:It's not a bad thing (Score:4, Interesting)
Take Python. I love its syntax, the plethora of libraries available, the ability to rapidly prototype and see immediate results. All the things that make it "fun" really do make it productive (shorter time to a final, correctly coded solution). It's a great language. However, it doesn't run as fast as C/C++ code, for obvious reasons (interpreted, dynamic typing, etc.). There are ways to make it faster (rewriting critical subsections in C/C++, using fast libraries intelligently, various optimizers and pseudo-compilers exist, etc.). But everyone (or at least me) would love to code using Python syntax but have the code run as fast as C/C++. Best of both worlds.
In other words, what I would love to see is tons of effort put into making toolchains for making Python (or other "fun" languages) faster (and probably by association more enterprisey in terms of being type-safe, etc.). I'm not saying doing this would be easy, but there are various proofs-of-principle for compiling Python code or automatically converting it to C/C++ code and whatnot. It could be done and would allow programmers to use the clean syntax of Python to more rapidly code a project without feeling bad about the performance not being up to scratch.
Again, I'm aware of the alternatives (rewrite bottlenecks in a fast external, etc.). But it seems to me that we've learned a lot about what makes for a nice high-level syntax, so we should automate the grunt-work of converting that syntax into fast low-level code. (Yes, I'm aware of gotchas such as dynamic typing preventing full compiling in some cases, but something like adding type hints to a high-level language would surely be less onerous for programmers than going to a lower abstraction level wholesale. Even type hints could be automatically inferred by a parser in a lot of cases, with a programmer checking that they make sense...)
Re: (Score:2)
And why must "fun" and "enterprisey" be exclusive? If your definition for enterprisey is scalable and risk-averse, why can't a language that is pleasant to use meet those requirements?
I maintain hope for a language, compiler/runtime, and library that allows me to easily communicate my solution without being distracted by the language implementation (fun), while offering good performance and scalability. As for being risk-averse, there are never any guarantees there and I doubt you'll find that the great s
Re: (Score:2)
If you want experimental, fun languages, your choices are actually very good, what with ruby, python, and a ton of functional languages. In terms of safe and good for scalable, risk-averse environments, there's pretty much just Java and C#.
Do you have any idea how much financial code is written in Python? I take that back, because it's obvious you do not.
Re: (Score:2)
I got excited? (Score:2)
I would describe it more as "a funny feeling".
There shall be puns (Score:2)
Still no confirmation whether the object declaration will go something like:
objet d'art(foobar) { }
Bad article and summary (Score:3)
Both the article and the summary don't seem to get it. This sounds like C#.NET take two, with the added trick that until browser support for the real Dart is there, you can deploy by translating your client side Dart code to JavaScript.
Re: (Score:2, Interesting)
just great... Java took at the 'best' ideas of C++ and then mangled it into something pretty nasty - a memory and resource hog with poor performance, especially for GUIs, and added non-deterministic finalisation (eventually - the original didn't even have that!) with verbose OO code everywhere. The only good thing it gives is a huge set of libraries.
C# took that and did even more to it, so much so that you require an IDE to write code.
So what does Google do? Take these languages and builds on top of them ev
Re: (Score:2)
Why don't they go back to the source, learn the mistakes that Java made ... and create a language initially based on C++ with the good bits of that included.
let me guess. c++ developer?
Re: (Score:2)
You cannot take C++ and mangle anything since C++ is a Frankenstein language to begin with. Only it's inventor and the deranged could possibly love it. As for memory hogging, there are plenty of C++ apps that are memory hogs. And please, poor performance in Java? Java is one of the fastest languages on the planet. The only languages that even compete with it are C and C++. Apparently you get your information from the 1990's.
Oh, and last I checked...the vast majority of C++ developers use an IDE.
Re: (Score:2)
The only way you could "learn the mistakes that Java made" and then "create a language initially based on C++" is if the purposes of learning Java's mistakes was so that you could repeat them.
Modern C++ may good for some things, but they don't seem to be the things Dart i
Re: (Score:2)
C# doesn't need an IDE to write code. It's plenty easy to write and compile projects outside of the IDE. All it requires is a little research, but you can't honestly decry that with a straight face now can you? Or were you born with the knowledge required to compile C/C++ projects at the command line? Microsoft even provides a shortcut to the visual studio command line environment when you install it for christ sake.
Just because they give you the tools doesn't mean you are forced to use them (not that I kno
Re: (Score:2)
I disagree about the ceremony of C++, C++ is a lot lower level and library code is pretty direct. C# on the other hand does like you to create classes all over the place (I'm thinking especially of XAML where you can only bind a gadget to a variable via an object which has properties - the equivalent in C++ would be 2 lines of code, and one of those would be the variable declaration).
I wouldn't like to resolve those namespaces or the horrendously long method names that most style guides expect you to use w
Re: (Score:2)
Comparing C# and C++ as languages to write meaningful code in without an IDE strikes me as very similar to comparing a cantalope and an apple as a tool to drive nails. It might be easier (even much easier) to use one than the other, but either is far from a good choice for the role.
Re: (Score:2)
Dylan is an example of a practical, approachable, well-designed, strongly typed language that compiles well and scales well. It took Lisp and Scheme concepts, added a few of its own, and employs a nice, traditional Algol-ish syntax. It works well with C code. It w
Re: (Score:2)
That's actually very good! (Score:3, Insightful)
Even mono is not open enough to allow usage in many embedded devices (read: game consoles) without paying royalties, due to the GPL license.
A replacement for those that is portable, can be used everywhere, is easy to migrate to and is distributed by the very permissive licenses Google always utilizes sounds extremely good in my view, so I think the negative tone of the summary is misplaced..
Whoa there (Score:5, Insightful)
The main problem of Java and C# is that they are controlled by Oracle and Microsoft respectively
But Dart is controlled WHOLLY by Google. Why is that really any different or better?
The reality for Java is much better, it's controlled by a community standards body (the JCP). Oracle can provide direction but they are NOT in control the way Microsoft and Google are.
Re: (Score:2)
Re: (Score:3)
That's what Microsoft did with C# and the CLI, too. Either we believe that our open standards bodies are real, and that standards are indeed standards, or we believe that they are corruptible by corporations and nothing is actually standard, or we believe that somehow Google is an incorruptible paragon of holy perfection.
I understand the reasoning behind the first two. I think the third might indicate substance abuse.
Re: (Score:2)
Microsoft did standardize C#, but actual development of the language and tools moves so fast that non-MS implementations always lag. And MS only supports Windows (by design).
Time will tell, but I think we can expect Google to actively support all of the platforms Chrome runs on, and to release full source code under a fairly permissive license. An open standard plus an open source, multi-platform reference implementation will be truly open in a way that C# isn't and Microsoft doesn't want it to be.
Embrace, extent, extinguish (Score:2)
Re:Whoa there (Score:5, Informative)
The difference is that Google have pretty much a clean track record when it comes to open source software.
I don't think so. Chrome was marketed as an open source browser, yet from the very first release they added in proprietary bits without source code. It's nice that it is almost open source, and that Chromium exists, but it's important to note they compromised on open source principles.
This continues now with Android, with Google releasing Honeycomb for their partners without releasing the corresponding source code. I don't care what excuses Google gave for that, no source code is no source code.
Google cannot be trusted. They are a big corporation looking out for their own interests. Sure, they play nice for the most part, but many times they don't.
Re: (Score:2)
Google cannot be trusted.
sure they can. they can be trusted to always act in a way that maximizes their profits. in fact, that's all any corporation will ever do, by definition. if you can't stand that, stop using any OSS project that consumes corporate resources in some way or another. that would rule out so many of the OSS projects that you'd be forced to start using non-OSS software in its place.
Re: (Score:2)
Re: (Score:2)
Google is still pretty young, you haven't given them enough time to become utter bastards yet.
Microsoft? (Score:2)
Re: (Score:2)
In the world of programming, you choose your poison and insist to everyone that you are feeling fine.
Re: (Score:2)
Why is JS compiling ominous? (Score:3)
but ominously, it also has a tool that converts Dart code into JavaScript
No, that's an excellent feature. Allows us to start developing sites with this new language without having to wait for all browsers to upgrade or to have plugins installed. How else would you get any sort of main stream takeup of a javascript replacement?
Re: (Score:2)
Yes and no.
Unless Dart is "much better" why take the time to learn a new language where support will depend on two codebases. You will have your Dart code and your js translation of your Dart code?
If you know JS your going to keep developing in JS until Dart support is proven and universal.
Even then you will probably keep using JS unless you start a new project.
Re: (Score:2)
I don't see why this is any worse than a compiled language (Java, C# etc.), it's not going to be hard to manage your sourcecode and the JS output if you've got an automated build of your web project set up.
Having done a lot of big projects in JS for me it has a lot of shortcomings and it would be great to have a replacement language that is backwards compatible. Sure I wouldn't do anything enterprise level for a year or so while Dart proves itsself, but I would happily use it for large projects before wides
Re: (Score:2)
It comes down to time for most developers. For instance I need to filter a large text file a few weeks ago. I have been thinking about learning Python because it seems pretty interesting. Time ticks buy as I am reading and setting up things and then I think, " if I used perl I would have been done". So I write the four line perl script and I am done.
A tool just needs to be a lot better to be worth the time sink. A lot of the time Good enough is just that good enough.
Re: (Score:2)
To a degree, but if everyone stuck to this mindset then everyone would still only be using the first language they ever learnt. It's like saying that no-one will ever use Java or C# because they know PHP and it's "good enough".
Dart has many nice features that would be very useful for large multi-developer projects (typing, static checking etc.) which would easily offset the time for developers to familiarise (one of the design goals of Dart is that it is easy to learn from a javascript background anyway).
Re: (Score:2)
Ahh but PHP isn't good enough for desktop applications. To change tools it must be much better or you have no other choice.
Re: (Score:2)
" if I used perl I would have been done".
And if they would have spent this time, effort, and money on Parrot... You, the Python coder, the Lua coder, and the insert Parrot supported language [parrot.org] coder would have been done.
Re: (Score:2)
Well, it should be obvious, but I'm saying anyway: Wait to learn Python when you have a problem that isn't The One Thing one of the languages you know shines at.
When you need to filter a text file, please do it in Perl*, not Python. That is good advice even for Python programmers.
* Or Haskel. It is amazing how good Haskel is for filtering text. But, of course, you need a completely different mindset than you'd use with Perl.
Re: (Score:2)
True which is why I picked Perl. To me scripting languages like Perl and Python are the tools I use for simple one off programs like filtering a text file.
I do not do much web stuff right now but I could see me using Python along with Perl and PHP.
For anything more complex on the desktop I would use Java, C++ or ObjectiveC.
If I need to do anything with or very old dos codebase I would breakout FreePascal.
You see it is a need to learn thing.
Now Haskel does interest me but when I have looked at it my head hur
Re: (Score:2)
I find that Python is quite usefull for writting any kind of fancy UI. It is simlper to write in than C++ (or Java, how can a garbage collected language be harder to write in than C++?), and yet, it doesn't collapse at its own weight like Perl or PHP. I guess that is some of your more complex stuff, so I'd recomend you learn python next time you go out to use QT or do web development (or more complex UIs, like what you can do with PyGame or 3D modellers).
PHP by its turn, I now consider defunct.
I looked at H
Re: (Score:2)
I am just not a big fan of C++ but I mostly used it on Windows so that may have tainted it for me. Java+Netbeans makes writing GUI software really easy for me. I also find Java's tread support very robust. It could just be that it fits my style.
Perl I do agree is good for programs under 100 lines long and that you will never touch again.
However for plowing though a bunch of data it is a great tool.
I really like ObjectiveC. It seems far less like a Hack to me than C++.
Re: (Score:2)
The key here is I'm willing to believe Dart can be 'much better', because really, being 'much better' than Javascript is a pretty low bar.
Re: (Score:2)
Yawn, we've seen this before with GWT for Java. Wake me up when it has code to convert Dart into Bacon Sandwiches.
Re: (Score:2)
It's becoming obvious that browsers need to support a runtime like LLVM in addition to or instead of javascript. That way, the developer could use their language of choice and just compile to LLVM byte code instead of to javascript. I would think it should be easier to optimize performance for LLVM byte code that for javascript. Would there be any downsides except for the fact that it does not exist already?
If only Google would have thought of that! (Score:2)
Yes. It is. [googlecode.com]
Closed platforms (Score:3)
The ominous part of that memo is "The cyclone of innovation is increasingly moving off the web onto iOS and other closed platforms." By which they mean iPhone and Android "apps". "Apps" are not a very good environment, and many of them are just web pages with delusions of grandeur. But that they have a payment model, DRM, and give the app distributor absolute control.
It's all about screwing the end user. "You're the product, not the customer".
As a language, Dash looks mediocre, as the article points out. "Optional typing", an idea that started with Visual Basic is usually a lose in language design. Statically typed languages have been successful, and dynamically typed languages have been successful, but optional typing is usually an afterthought bolted on to increase performance at the cost of programmer confusion. There's a typed Python variant, for example; PyPy is written in it. It's rarely put in a language from the beginning.
A few languages have tried a form of soft typing, where you have, essentially,"integer", "real", "boolean", etc., and arrays of same, plus "object". That way you get efficient code for machine arithmetic, which means you can do codecs and graphics in the language. Objects have to be dispatched anyway, so a performance penalty there isn't so severe.
Re: (Score:2)
sorry, but did this,
But that they have a payment model, DRM, and give the app distributor absolute control.
and this
It's all about screwing the end user.
go together?
having a payment model doesn't screw the user, it gives the developer a way to feed their family. as to the user, it's up to them if they want to pay or not. nobody is screwed.
at least on android, there's nothing special in the platform that forwards DRM. android does have a "license verification" API that allows developers to validate that users actually purchased the app. see point above about feeding the family.
on android, the "distributor", by which i guess you me
Re: (Score:2)
at least on android, there's nothing special in the platform that forwards DRM. android does have a "license verification" API that allows developers to validate that users actually purchased the app.
Actually, any serious pretense to verify the legitimacy of copying a bunch of bits to the device can only be done with a technology that amounts to DRM, requiring device lockdown all the way down to the bootloader. So either Android is claiming their verification to be more than it is, or it forwards DRM.
Quick! Everyone start converting your code! (Score:2)
I have this idea of a new language that is 100% Javascript-compatible. It would require no code conversion whatsoever, works with your existing tool chain, and requires no new learning. It started out from an Ada-like project, and I dubbed it "New ADA", or "NADA". It's evolved quite a bit and doesn't look like Ada anymore. In fact, it looks exactly like Javascript. But it's new! I recommend that everyone start using Nada as soon as possible to open a whole new world of possibilities.
go (Score:2)
Re: (Score:2)
I thought Go was just a project of some Google engineers and not an official product.
Standard library (Score:2)
The corelib looks very sparse: http://www.dartlang.org/docs/api/index.html [dartlang.org]
The thing I like about jquery and dojo is that you actually get a reasonable standard library, which JS sorely lacks. It would be nice if dart included a better standard library.
The end game for GWT (Score:2)
GWT rocks - don't expect it to go easily into that good night.
Consider the following scenario:
o Convert the compiler to accept Dart instead of "pure" Java. Remember, GWT does not implement the entire language, only a subset of the run-time. This conversion can easily be implemented as a rolling replacement to the compiler.
o There's absolutely no reason now for GWT to support Java 7+
o The Google Plugin for Eclipse will easily convert to Dart, keeping the developer mind-share
o Keeps all those nifty 3rd party
MIT licensed anylanguageVM (Score:3)
If Google would have spent time and effort on Parrot or helped to release a VM that interprets multiple languages under the MIT license, I would be loving Google. Another scripting language and VM doesn't make me warm, fuzzy, or even remotely interested.
Re: (Score:2)
Look up PNaCl. To be honest, I'm somewhat disappointed that this Dart thingy isn't running on top of that.
Re: (Score:2)
Salt, Pepper, Pinnacle are for pluggins and JIT'd C. I want a virtual machine designed to efficiently compile and execute bytecode for dynamic languages [parrot.org] built into the browser instead of a JavaScriptVM.
Re: (Score:2)
If you have a low-level VM (such as LLVM, which is what PNaCl uses), you can always build something higher-level on top of that - be it bytecode interpreter, JIT compiler or whatnot. You could take Clang and compile Parrot to LLVM bytecode for example.
On the other hand, it also lets one use compiled languages. It's all about having more options.
Re: (Score:2)
"It lets one use compiled languages." Yes, LLVM absolutely does. I love it. It also allows one to create JIT's for high level languages. Jade, Crack, Rubinius, etc... are all done with LLVM. However, a JIT for a language is far from an anylanguageVM. I would call it an HLVM but that name was taken then absorbed back into LLVM. What I'm talking about is an interpreter that interprets more than JavaScript not a JIT for each language. There is a huge difference. Yes, one could use LLVM to build one.
The real reason for Dart (Score:2)
Remember, Dalvik bytecode is not Java bytecode. Android only uses the Java language, not its v
Re: (Score:2)
Remember, Dalvik bytecode is not Java bytecode. Android only uses the Java language, not its virtual machine, which is why Oracle mistakenly believes they can sue Google over its use. Changing the source language removes the perceived violation without breaking existing software.
Mistakenly? I'm pretty sure they *are* suing Google over its use.
Re: (Score:2)
You've got some faulty assumptions. One of the reasons Oracle is suing Google is over the Dalvik implementation and patents:
http://en.wikipedia.org/wiki/Dalvik_(software)#Licensing_and_patents [wikipedia.org]
Interfaces = Meh (Score:2)
I was really hoping that they included something like Ruby's mixins. I'm sorry, Google, but I'm not interested.
Re: (Score:2)
Interfaces are useful for static checking, since they express an implementation-free contract; this makes them important for Dart.
Mixins might be useful in addition to interfaces, but don't fill the same role. Its also early in the game for Dart, unless there is a philosophical opposition to having mixins, they could well be added in. Maybe you should recommend that on the forum on the dartlang.org website?
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Java with first-class functions and opt-in dynamic typing is called C#. ~
Re: (Score:2)
Its java.
With optional typing. So, more like groovy.
Re: (Score:2)
No, no, no -- it's most definitely not java. Google are being sued by Oracle over their use of Java in Android, don't you know. Any new language from Google is not java, not at all. Any superficial similarity you think you see is a mistake, so don't you go mentioning it Larry Ellison.
Re: (Score:3, Informative)
JavaScript = Dynamically typed language with first class functions with prototypal based inheritance, some runtime safety
Dart = Dynamically typed language with first classes functions, but with some support for static types & classical inheritance, still runtime safety/error checking, no compiling etc.
Dart is more like JavaScript than Java. It's been touted as a JavaScript replacement, no
Re: (Score:2)
First class functions? Dynamic typing with optional static typing? Its not really very much like Java. It is more like the love child of JavaScript and C#.
Looking at the spec, it looks like it has some of the best features of both and I'm looking forward to getting my hands on it.
Re: (Score:2)
Actually, looking at the spec, this seems to be mostly C#, except that it defaults to "dynamic" type (it's even named the same!) when you don't specify it. Frankly, I think it's more trouble than it's worth, particularly in cases where C# would infer the type instead (e.g. "var", or non-type-annotated lambdas).
Aside from that, and a few minor deviations such as no method overloading (but named constructors), I really don't see what this brings to the table compared to C# 4.0+ (the one that has "dynamic") -
Re: (Score:2)
They've made pretty clear what their exit strategy for Android is: move things to the browser, merge with ChromeOS, and do everything as browser-based apps (not necessarily web-apps in the traditional sense, as Chrome supports browser based apps that can be fully offline, and which can include native code.)
So, insofar as this is this intends to replace JavaScript as the main
Re: (Score:3)
Seems to me DART is meant to replace the ubiquitous PHP/Javascript combination. Think about it: quick prototypes with untyped code, moving to static typechecking wherever wanted, Server-side and client-side execution, built-in HTML5 DOM library. Its features may be unexciting, but they could provide an easy escape from PHP/Javascript hell without too much learning curve.
If that is Google's primary target with DART, it may prove to be a very strategic move.
Re: (Score:3)
Its designed to run both client-side and server-side.
Re: (Score:2)
If DART catches on I bet you'll see something like PhoneGap or Titanium eventually.
Re: (Score:2)
Screw it... just use perl.
Sorry, its not on The List
https://github.com/jashkenas/coffee-script/wiki/List-of-languages-that-compile-to-JS [github.com]
Supposedly you can compile scheme, ruby, or basic into JS. Never tried it, don't know.
I transitioned from Perl to Ruby probably about 6 years ago, it was fairly painless, would advise if you feel you're "stuck" on perl to try ruby.
Re: (Score:2)
awk
Erlang (Score:2)