As I understand it from Crockford's retelling and what I've read on the web and heard in podcasts, Sun was concerned that LiveScript could be seen as a competitor to Java if both were present in the browser. Netscape wanted Java but wasn't willing to kill off their scripting language, so they agreed to name it JavaScript to make it sound like the two are related (and JS being "merely" a scripting language, people would still prefer Java for "real" programs).
Apparently LiveScript was also originally planned to be more Lisp-like but then they went with C-like syntax because that was more popular at the time (see Java). And the entire language was cobbled together in a ridiculously short time frame (something like a couple of weeks?) and intended to be "beginner friendly", which is where a lot of the language's quirks come from.
Considering the original JS already contained the syntax Crockford would eventually define as JSON, you could say they managed to create not one but two languages at once. Say what you will about JS being a good language or not, but you have to respect that achievement.
Considering JS only became ECMAScript because Netscape was scared of incompatible copycats, you could argue JS as it is today wouldn't exist without Microsoft, too. Strange world, eh?
> Considering the original JS already contained the syntax Crockford would eventually define as JSON, you could say they managed to create not one but two languages at once.
No, the original version of JavaScript did not include object literals and array literals - the two foundations of JSON.
Object and array literals were introduced in JavaScript 1.2:
Right, and note to grand-parent post: Crockford was not at Netscape so he's not the eyewitness you're looking for.
I created JS1.2 and SpiderMonkey in fall 1996, as described in that JS Jabber podcast. Find this part in the transcript:
"I started to rewrite the VM, pay off technical debt, and I wrote what became SpiderMonkey. The original Mocha VM was not SpiderMonkey."
Object and array initialiser syntax was inspired by Python of the time (1996 would be Python 1.x, x around 6 IINM), but I made property names literals when spelled without quotes, as identifiers (same as the implicitly quoted name on the right of dot in member expressions).
In ES6 (in imitation of computed property access using square brackets) you can finally compute property names in object initialisers too:
Okay, so you didn't create the syntax JSON was based on until JS1.2? What I was getting at remains true then, though: you created JS and you created the object and array literal syntax that Crockford then "discovered" (to quote Crockford) and defined as JSON. Even if you didn't do it in the same couple of days it took you to create the original JS itself ;)
The eventual compromise was that JavaScript would be a playground for experimentation and learning; whereas, Java was designed for hardcore computer science-types. If you wanted to add rich functionality to your site, you'd use JavaScript to call into a Java library, which did the heavy lifting. (This was paraphrased from Brendan Eich's The Origin of JavaScript: http://javascriptjabber.com/124-jsj-the-origin-of-javascript...)
Of course, the web community embraced Shockwave/Flash over Java, and Java retreated to the server and mobile. Later, Steve Jobs was famously unimpressed with Macromedia/Adobe's forays into mobile and refused to ship a Flash interpretter in iOS. This led to the decline of Flash and a rising interest in creating a rich stack for client-side applications in JavaScript, bringing us to today's stack (canvas, WebGL, web audio, WebRTC, Ember/Angular/React, web components, pnacl/asm, etc.).
Apparently LiveScript was also originally planned to be more Lisp-like but then they went with C-like syntax because that was more popular at the time (see Java). And the entire language was cobbled together in a ridiculously short time frame (something like a couple of weeks?) and intended to be "beginner friendly", which is where a lot of the language's quirks come from.
Considering the original JS already contained the syntax Crockford would eventually define as JSON, you could say they managed to create not one but two languages at once. Say what you will about JS being a good language or not, but you have to respect that achievement.
Considering JS only became ECMAScript because Netscape was scared of incompatible copycats, you could argue JS as it is today wouldn't exist without Microsoft, too. Strange world, eh?