The invention 20 years ago
First standardization as ECMAScript
Further development of ECMAScript
ECMAScript 5 makes development robust
The big change: ECMAScript 6 »Harmony«
The radical restructuring planned since the beginning of the 2000s and thus the expansion of the syntax has been postponed to the next version with the code name »Harmony«. In June 2015, ECMAScript 6 was finally adopted, also called ECMAScript 2015.
Metal languages show the way
ECMAScript 6 paves the beaten track
ECMAScript 6 is a synthesis of these ideas. Instead of creating an ideal language on the drawing board, existing practices were incorporated. "Paving the cowpaths" is what it means in the jargon of web standards. ECMAScript 6 contains a declarative module system that can be seen as a further development of CommonJS. It adopts syntaxes that have proven themselves in CoffeeScript, e.g. declarative classes as syntax sugar for constructors and prototypes as well as an abbreviation for functions.
In the course of this, the ECMAScript 6 syntax corrects further design errors and eliminates pitfalls. With and, variables or constants are possible whose validity (scope) is limited to a block instead of a function. The compact arrow functions (as well as) result in a lexical resolution of the keyword - the cumbersome manual binding of the function is no longer necessary.
ECMAScript 6 in practice
But it has become common practice to use the Babel transpiler and a module bundler such as browserify or Webpack to write ECMAScript 6 code and translate it into ECMAScript 5. This practice was perfected by the said metalanguages.
Asynchrony with ECMAScript 6 and 7
From promises to
Promises make development a lot easier, but they still require separate success and error handling functions. It would be desirable for asynchronous code to be just as easy to write as synchronous, blocking code.
Some try to achieve this goal with generator functions and the yield keyword from ECMAScript 6. But the clean solution is expected to come in ECMAScript 7: The keywords and mark asynchronous functions or function calls. The highlight is: and are just syntax sugar. Ordinary promises are used under the hood, but non-nested notation is possible as with synchronous code.
These performance limits are particularly evident in mathematical operations that are necessary for 3D games, physics simulations, and audio and video processing.
Reduction and specialization: asm.js and WebAssembly
In mid-2015, the four major browser manufacturers announced that they were working together on a further development of asm.js: WebAssembly is a new compressed binary format that contains machine-level program code in the form of an abstract syntax tree. The binary representation saves browsers the parsing step. A separate text representation is planned to ensure readability for people. The commands in this language are extremely limited, the types primitive.
- Should I take magnesium with Prilosec?
- You can text on Apple Watch
- What is data center design
- What are the dangers of male masturbation
- How do I teach English overseas
- Does an HCL molecule hybridize?
- Why did Futurama end in 2003
- What's wrong with BlackHatWorld Link Building Services
- Is free banking real
- What are the disadvantages of communicating with your fingertips
- What are the basic tips of business
- Which human activities benefit our environment
- Cat or dog owners live longer
- Are there alternatives for OnePlus 5t
- How do I understand football
- What Mac software to record mix music
- Is fifty old
- How did Hinduism begin in Sri Lanka
- Which language does the processing 3
- Ghosts know they are ghosts
- What is SQL Server Developer
- How close can beehives be
- A concept to limit distributions is possible
- What are some obscure music recommendation sites