Just to play devils advocate... I think Oracle has so little goodwill with devs (quite the opposite), that releasing the JS trademark probably won't even move the needle.
I guess my point is that these struggles eventually do reach the leaders and they choose something else. We moved off teradata because of shared service orgs so we'll probably leave this type of oracle at some point too. Either a completely self service option of oracle or an open source one.
I'm a dev at a such a small company, and in a position that I can make or highly influence such decisions. Oracle products will never be in our supply chain because of me - a dev.
I'm gonna bet the managers didn't ask because they knew what the immediate answer would be
Strangely ignorant from Ryan - Oracle does maintain a JavaScript engine product - GraalJS. In fact is it possibly the only modern engine available under a commercial licence?
Because I doubt Ry would write this article if he was one of the top contributors to GraalJS which is what this graph says:
Guy Steele told me once that Sun registered it with ECMA so they could tell people (governments?) that it was a registered standard and that ECMA was the easiest/fastest/most compliant way to get there.
I’d always thought that ECMA was a weird place to register it.
We're at about the right point in the timeline to start calling it YavaScript which both solves the trademark problem and keeps us on the path laid out in prophesy.
JS doesn't have to stand for anything. It's just 'JS', pronounced jay-ess.
Well, yes that’s the reason why standards bodies exist :)
Hmm, I see the same was done with Dart…
Like... "C" is a specification, "gcc" is an implementation. "Python" is a specification, "CPython", "PyPy", ... are implementations. "ECMAScript" is a specification, "webkit", "spidermonkey", ... are implementations.
"JavaScript" is a (trademarked) specification, and also "ECMAScript" and "JavaScript" are "very very similar" (wink wink)
Implementations of ECMAScript/JavaScript are things like V8 and Spidermonkey.
Good luck with that :) :) :)
PS I never understood why they called it JavaScript since it has nothing to do with Java.
Netscape's Javascript had something to with Sun's Java in the sense that both languages were deliberately positioned together in the Netscape browser back in 1995. Key people from both Netscape and Sun worked together on that. Java would be positioned as the "professional compiled language" and Javascript would be the "easier scripting language". My previous comment with a link to Brendan Eich's explanation: https://news.ycombinator.com/item?id=26502156
But yes, if one only looks at the syntax of Javascript being different from Java -- without any context of what happened in 1995, it does seem like Javascript was misnamed.
I don’t think they’ll ever do it though, given the history of oracle
And if you want paid support you ca choose for example OracleJDK, which is otherwise feature-equivalent to OpenJDK (as it is also just a tiny fork), which’s LTS version is free for the next LTS+1 year. This is the same model as Red Hat Linux vs Fedora.
ECMAScript is absolutely the worse name for it.
So anyway have you heard of GraalVM
Just call it JS and invite the community to come up with whatever silly backronym they see fit. Just super? Jihad script? Jelly sandwich? Juniper spirit? Other languages have been doing it for decades, so why not?
The existence of a trademark doesn't prevent you using that trademark (as in referencing it like "this app is written in JavaScript".)
Clearly Oracle is not defending the trademark, and it is likely its too late to start. Worst case they pick on you, you change your docs to say Ecmascript.
Frankly it's safer where it is, than being released so the USPO or something can issue it to someone else.
A bigger intrinsic problem is lay-programmers confusing JavaScript with Java, and unfortunately there's no fixing that.
That said, my guess is all they really want is for it to be a zero cost pain in the ass for Microsoft, Apple, Google, etc.
(Yes... You youngsters might think Bezos or Zuck might be gunning for that title, but they got nothing on ol' Larry. He's evil incarnate. There's reasons those other two are always in the news and Ellison is not. Think about it. Pure evil.)
b) Oracle's CEO is Safra Katz and has been for a while now. And pretty sure she has a lot more on her plate to worry about i.e. existential threat of AWS/Azure/GCP than fighting some meaningless lawsuit.
There are countless examples of people using the javascript name, incorporating it in books, articles, products, derivative works, etc. So, effectively the trademark has not been defended for decades. All fine with Oracle apparently. They never objected or sent any cease and desist letters. Oracle would not stand a chance in a court trying to enforce it now.
Assuming that is true (IANAL), do you want to be on the other end of that lawsuit, wasting your time and money?
>Careful law abiding engineers bend over backwards to avoid its use
..do they really? It never occurred to me but maybe I don't qualify as careful and law abiding.
ECMA International defines a standard called ECMAScript that implementations such as JavaScript, ActionScript3 (Adobe), TypeScript and probably some more have adopted.
https://blog.risingstack.com/history-of-javascript-on-a-time...
What other way is there ?
I’m not sure I understand what type of activities are being prevented by the trademark.
The language is called JavaScript. It was temporarily called other things including LiveScript during early development. It was developed at Netscape to be the scripting language for Netscape's browser and server (yes, you read that right). It was also the basis for a proposed competitor to CSS called JavaScript Style Sheets only ever supported by Netscape 4.
The trademark to the name was held by Sun prior to its acquisition by Oracle. The existence of the trademark led to Microsoft calling their reverse engineered implementation of the language "JScript". In order to avoid fragmentation via incompatible implementations Netscape published an official language spec with ECMA, an international standards organization similar to ISO. Because the specification could not use the trademarked name this led to the name "ECMAScript" which the official specifications have used ever since.
ECMAScript 3 is also the basis for ActionScript 2 used in Flash by Macromedia/Adobe, which is not fully compatible with JavaScript. ActionScript 3 was heavily influenced by the proposed ECMAScript 4, which was eventually scrapped because it tried to do too many things at once (while also intentionally being backwars-incompatible) and none of the companies involved at that point could agree on anything. This led to the heavily downscaled ECMAScript 5 release as a compromise until 2005 when ECMAScript 6 started the current model of yearly releases by defining a multi-stage process for new language features.
The obvious question is why it was called JavaScript to begin with. Again, there are many wrong answers in the comments. The generally accepted history is that Sun and Netscape wanted to cooperate to bring Java into Netscape as the new universal language for applications. Java was already going to be available for cross-platform desktop applications (and later for embedded applications like on feature phones) and Java applets were supposed to bring it to the browser.
According to various people involved at the time, Netscape's own scripting language was considered a problem by Sun so in order to avoid competing with Java, JavaScript received its final name in order to be rebranded as a "light-weight scripting language" alongside the "serious application development language" of Java.
It's also worth mentioning that JavaScript in the browser not only consists of the ECMAScript spec but also the DOM APIs, which were originally written in a language agnostic way because there was no consensus for what the default language for accessing these APIs would be. In addition to JavaScript and JScript, Microsoft also pushed VBScript (based on Visual Basic) and there were some attempts to let Java access the DOM APIs from within the JVM.
With Java applets being mostly dead and JavaScript having survived all other browser scripting languages, DOM spec writers have recently moved to considering JavaScript as the primary implementation language and mapping their implementation agnostic pseudo-language to JavaScript language features explicitly. This should hopefully reduce the number of language quirks in future web APIs (like the various native "list" types that don't quite behave like JavaScript arrays or `document.all` being falsey).
So in short, JavaScript is called Java so not to compete with Java for "serious browser applications" in the 1990s and ECMAScript is originally a subset of Netscape's (and later Mozilla's) JavaScript although JavaScript has since shrunk and ECMAScript expanded (e.g. JS's `let` and `const` outside strict mode have been superceded by ECMAScript's more recent `let` and `const` in strict mode) to the point that both terms are used interchangeably regardless of the runtime environment.
If you're wondering why Netscape went with ECMA of all places instead of something more obvious: neither the IETF nor W3C wanted to get involved in programming language specifications at the time and the ISO process took too long but there was a way to fast-track ECMA standards to ISO standards. Remember that this all happened during the peak of the browser war between Netscape and Microsoft, so this was the only thing that mattered at the time.
If you want to learn more about the early history of JavaScript I'd suggest reading Brendan Eich's written history of it: https://dl.acm.org/doi/10.1145/3386327
s/2005/2015
Thanks for accuracy and completeness in your comment! Beyond the year typo, I wanted to add that the DOM "Level 0" was my work in Netscape 2 at first, and JS-inflected. IE3 added VBScript and by IE4 this made Microsoft's DOM0 aka "DHTML" have a mix of styles: as a superset it reverse engineered what I'd done, while adding VBScript-inflected forms such as document.all(id) -- note round brackets (square could be used too).
The W3C's DOM levels 1-3 used IDL and had more of a Java (or just verbose) style. The HTML5 effort at whatwg.org reunified, consolidated, resolved conflicts, and extended with things like the fetch API.
Thanks again, rare to see someone doing homework instead of repeating hearsay or assumptions on HN!
Having the man himself confirm my understanding of the history of JavaScript means a lot, thank you.
https://livescript.net/ (But seems inactive judging by GitHub).
Actually a mostly quite nice little toy language. (Only the OOP part seems messed up a little bit; but besides that it looks quite clean).
jaja because we keep copying over node_modules
Quote previously posted: https://news.ycombinator.com/item?id=15886728
:-)
"...I am going to try to make through this slide without crying..."
"...and by the way not to put too sharp a point on this..."
This is a non-problem for the world. I never heard of this being enforced in any way.
"LiveScript" was a great name, they never should have changed it.