As the topic takes its turn…
I mean, I know that this has been debated to death, but… ultimately, when I hear “JavaScript”, I think of the prototype-based language developed at Netscape that serves as the originating dialect of the EMCAScript standard. Specifically, I probably think of JavaScript 1.5. In a perfect world, only JavaScript would be called “JavaScript”.
But, I’m not surprised if I encounter JScript 5.7 (like in Trident) or similar. I mean, come on… Trident, that is IE. You’ve written “JavaScript” for IE before, right? That isn’t a stretch. Really, I probably wouldn’t be completely surprised to encounter anything even remotely similar to the ECMA-262 spec… You want to call ActionScript 3 “Javascript”? JScript.Net? Ok, whatever… “JavaScript” is the Kleenex to ECMAScript’s facial tissues. I could care less. There may be a… (what is Mozilla, a dinosaur?) that disagrees, but that isn’t the point.
Here is where I start to have a problem… JavaScript is easy to learn and use. It was designed to be that way. Because it is easy to use, it has real marketing value – it isn’t intimidating and it represents a low barrier to entry when it comes to creating your game. So, let’s use “JavaScript” since that is what this is. Right? Well, but then you get into the little (and not so little) differences… and while those differences aren’t a big deal to someone with a little experience, they can really be a nightmare for exactly the kind of person who was drawn to “JavaScript” in the first place. That sucks. So, let’s be proper about it and call it “UnityScript.” That is better, right? Except, now it sounds like something proprietary that may or may not be easy to use, and that group of people is looking elsewhere. That isn’t a win either.
As an advocate for Unity (not as a UT employee) I would have to say that personally, if somebody asked me, I would probably go with “UnityScript” and try to always add “a scripting language with JavaScript-like syntax” after it. In the long run, that also keeps the option of doing things like extending the language or marketing it in other ways on the table. If done right, it could potentially mitigate some of the problems that either choice will bring. But, ultimately, that isn’t the path that UT chose… so the conversation may be more or less irrelevant. So, instead of debating whether or not it is JavaScript or UnityScript or UnityJavaActionEcmaJScript.NET, we should instead read xkcd and laugh.