asm.js에 대하여

Dev 2013. 6. 10. 18:38

asm.js에 대하여


배경

- 파이어폭스 팀에서 개발

- 파이어폭스 차기버전 JavaScript 엔진(OdinMonkey)이 asm.js 지원 예정

- 모질라에서 asm.js를 이용하여 Epic의 언리얼 엔진3(heavy한 게임엔진)를 시연함


개요

- JavaScript의 subset

- 새로운 언어가 아님

- 기존 모든 브라우저에서 실행 가능함

- asm.js를 지원하지 않는 JavaScript 엔진도 asm.js 코드를 실행시킬 수 있음

- 변수 타입을 엄격하게 체크하는 문법을 정의(기존 JavaScript는 변수 선언시 타입을 지정하지 않음)

- 변수 타입을 엄격하게 정의하면 JIT(실행시간 컴파일) 뿐 아니라 AOT(Ahead Of Time: 실행전 컴파일)이 가능해짐

- 파이어폭스는 조만간 asm.js에 최적화된 컴파일러를 제공할 예정이며 벤치마크 결과는 "경이적"


전망

- 모질라는 기존 언어로 개발된 코드를 asm.js 코드로 변환해주는 도구 제공을 약속

- 특히 엄격한 타입 체킹 언어인 C/C++은 asm.js 코드로 변환하기에 최적인 언어


Reference

- Big Web App? Compile It! 

   http://kripken.github.io/mloc_emscripten_talk/#/

- [번역] asm.js : 컴파일러를 위한 low level, 고도로 최적화 가능한 JavaScript의 서브셋

   http://atconsole.com/2013/04/04/%EB%B2%88%EC%97%AD-asm-js-%EC%BB%B4%ED%8C%8C%EC%9D%BC%EB%9F%AC%EB%A5%BC-%EC%9C%84%ED%95%9C-low-level-%EA%B3%A0%EB%8F%84%EB%A1%9C-%EC%B5%9C%EC%A0%81%ED%99%94-%EA%B0%80%EB%8A%A5%ED%95%9C-javascript/

- asm.js에 대해서

   http://blog.outsider.ne.kr/927

 

(끝)

Posted by ingeeC
,