0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

ECMAScript雑学

Posted at

ECMAScriptって、策定ステップとかどうなってるの?みたいな疑問からお勉強してみた

ECMAScriptとは

ECMAScript(エクマスクリプト)は、Ecma Internationalもとで標準化されたJavaScriptの規格。
もともとJavaScriptはNetscape社のブラウザで使われる言語として誕生したので、他のブラウザは想定されておらず各ブラウザはJavaScriptを独自に拡張していた。
そのため、JavaScriptはまったく標準化がされていない言語だったが、
これではいろいろ問題があるとして、Netscape社は国際標準化団体のECMAに依頼してJavaScriptのコア部分を標準化した。
これがECMAScriptと呼ばれるものになる。

Ecmaとは

情報通信システム分野における国際的な標準団体Ecma Internationalの事。

欧州電子計算機工業会(European Computer Manufacturers Association)の略語「ECMA」と呼ばれていたが1994年に「ECMA」に名称が変わったので大文字にせず「Ecma International」と表記されるようになった
JavaScript以外にも色んな分野が話し合われている。

ECMA-262

ECMAScriptの事
「262」はEcma Internationalでの管理番号

TC39とは

TCは「Technical Committee」の事。
「TC39」はECMAScriptを策定してる専門委員会のこと。
Ecmaは色々な仕様を策定しているので、その中でECMAScriptを策定してるグループの名前が「TC39」
ちなみに同じくEcma標準化されてるDartは「TC52」

バージョンについて

1997年から2011年までは、1 - 5.1(4は破棄された)まで通し番号で管理されていたが、2015年に公開されたバージョンから西暦を名称に含めることになった。
2023年5月現在の最新は「ECMAScript® 2022」
最新の草案は「ECMAScript® 2024」
https://tc39.es/ecma262/

策定ステップについて

ECMAScriptは各機能を5つの段階に分けて策定される
ECMAScript 2016からは機能ごとに仕様のプロポーザル(提案)を出し策定
それぞれのプロポーザルにはStageと呼ばれる5段階のラベルがある
1年ごとに新しいECMAScript仕様がリリースされる
Stage 4となったプロポーザルは次期ECMAScriptに取り込まれ、正式にECMAScriptの仕様となる

5策定ステップ 段階のStage

  • 0 Strawman - アイデア
  • 1 Proposal - 提案
  • 2 Draft - ドラフト
  • 3 Candidate- 仕様書と同じ形式
  • 4 Finished - 策定完了
    次期ECMAScriptは1年ごとに出るので、その時までにStage 4となったものが次期ECMAScriptに入る。

TC39のプロセスステップ

https://tc39.es/process-document/
ECMAScriptの「0 Strawman」からのTC39でのプロセスは以下のように進む
TC39のGitHubで進捗など見ることができる
https://github.com/tc39

Stage 0 Strawman

アイディア出し。

Stage 1 Proposal

プロポーザルの目的や解決方法を示す
Polyfillやデモ等を用いて解説する

Stage 2: Draft

いわゆるドラフト
ECMAScript標準と同じルールでAPIや構文、セマンティックについて説明していなければならない

Stage 3: Candidate

仕様は完成した状態
実装や外部のフィードバックを求める状態
レビュアはその仕様策定者以外ならだれでもなれるが専門的な知識を持っている必要がある
ECMAScriptのエディタがチェックする必要があり

Stage 4: Finished

2つの実装(not Polyfill)が必要
ECMAScriptへ取り込まれる準備が完了したことを示す状態
ECMAScriptのエディタがチェックする必要があり

参考URL

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?