I ended up having to wade through a sea of ambiguous and seemingly conflicting results:
“ECMAScript is a standard.”
“ECMAScript is a specification.”
“ECMAScript is a language.”
Holding back the urge to cry, I bucked up and decided to commit to some painful yet productive research.
So get pumped.
Without further ado, let’s get started.
An organization that creates standards for technologies.
To illustrate an example of “standard” (though not one created by Ecma), think of all the keyboards you have ever used. Did the vast majority have letters in the same order, and a space bar, an Enter key, arrow keys, with numbers displayed in a row at the top? This is because most keyboard manufacturers base their keyboard design on the QWERTY layout standard.
This is a standard published by Ecma International. It contains the specification for a general purpose scripting language.
ECMA-262 is a standard like QWERTY, but instead of representing a keyboard layout specification, it represents a scripting language specification called ECMAScript.
Think of ECMA-262 as ECMAScript’s reference number.
A scripting language
A programming language designed specifically for acting on an existing entity or system
For a general idea of what makes a programming language a scripting language, consider the commands “walk”, “run”, and “jump.” These actions require something to carry them out, perhaps a person, a dog, or a video game character. Without an actor to perform these commands, “walk”, “run”, and “jump” wouldn’t make sense. This set of actions is analogous to a scripting language that focuses on manipulating an external entity.
The specification defined in ECMA-262 for creating a general purpose scripting language.
Synonym: ECMAScript specification
While ECMA-262 is the name of the standard, it represents the scripting language specification ECMAScript.
ECMAScript provides the rules, details, and guidelines that a scripting language must observe to be considered ECMAScript compliant.
A general-purpose scripting language that conforms to the ECMAScript specification.
It is a dialect of the ECMAScript language.