본문 바로가기

프로그래밍

ECMA-262 5th Edition과 5.1 Edition의 차이는 뭐지?

반응형

일단 스펙 자체의 차이는 없다고 합니다. MDN 문서를 보면 일부 오타(?)만 수정하고 변경은 없다고 하네요.

It includes ES5 errata fixes, no new features.

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Language_Resources

 

JavaScript language resources

ECMAScript is the scripting language that forms the basis of JavaScript. ECMAScript standardized by the ECMA International standards organization in the ECMA-262 and ECMA-402 specifications. The following ECMAScript standards have been approved or are bein

developer.mozilla.org

그래도 뭔가 찜찜해서 더 내용을 찾아보니 에디터로 참여했던 Allen Wirfs-Brocks가 자신의 블로그에 남긴 글이 있더군요. 역시 비슷한 이야기인데, ISO에 표준을 제출하는 과정에서 일부 잘못된 부분을 바로잡았고 새로운 기능이 추가된 것은 아니라고 합니다.

Once approved by Ecma, ES5 entered a process to become an ISO standard. That process should be completed in early 2011.  The ISO edition of the ES5 specification incorporates a number of editorial and technical corrections including those listed in the current ES5 errata.

http://www.wirfs-brock.com/allen/posts/39

 

Announcing ECMAScript 5.1

Announcing ECMAScript 5.1 The latest JavaScript language standard, ECMAScript 5, was approved by the Ecma International General Assembly one year ago.  Since then it has seen rapid adoption in new browsers releases. Once approved by Ecma, ES5 entered a pro

www.wirfs-brock.com

ISO/IEC 16262:2011에 반영된 항목들이 일부 업데이트되면서 ECECMA-262 5.1 Edition으로 발표한다는 겁니다. 그래서 결국에는 같은 것이지만, 5 에디션에는 약간의 오류를 포함하고 있으니 5.1 에디션이 유효한 것이라고 보는 것이 맞겠죠. 그래서 다른 문서들을 보면 5 에디션과 5.1 에디션을 딱히 구분해서 사용하지 않고 있습니다.

 

ISO 문서의 링크는 아래를 가리키고 있는데, 해당 문서는 취소(withdrawn)이라고 표시되어 있네요.

https://www.iso.org/standard/55755.html

 

ISO/IEC 16262:2011

Information technology -- Programming languages, their environments and system software interfaces -- ECMAScript language specification

www.iso.org

문서의 생애주기를 마치 사람처럼 나이로 표현하는 것이 참 독특합니다. 예전에도 ISO 문서를 본 것 같은데, 저 표는 처음 본 것 같네요. 하지만, 16262:2011 문서가 완전 폐기된 것은 아니고 22275:2018 문서에 포함된다고 보는 것이 맞을 듯 합니다. 22275:2018 문서에는 언어 스펙을 다루는 것이 아니라 범위만 다루는 3장짜리 문서만 제공되거든요.

22275:2018의 범위는 대략 이렇다고 합니다.

728x90