読者です 読者をやめる 読者になる 読者になる

Browser

Microsoft Edge(Project Spartan, Internet Explorer) 、ブラウザ周辺、Web フロントエンド開発、UI、など

Microsoft Edge まとめページ

ChakraCore 版 Node.js について

昔から Chakra 版 Node.js があれば良いなと思っていたわけですが、本家の Node.js の方に ChakraCore 版をサブミットしているようです。

今回の元ネタ blogs.windows.com

 

去年、ChakraCore のオープンソース化より前に Windows 10 IoT で Chakra 版 Node.js がありました。
今回の ChakraCore に依存しないもので、Windows 7 SP1 以降で対応したり、Linux などでも動作するよう進めているようです。

 

Node.js で ChakraCore JS エンジンはどうなっているのか

Node.js は Google Chrome の JavaScript エンジン V8 で動くようにつくられています。
V8 の命令に合うように ChakraCore にがわ(shim)をかぶせているます。
(コードを見ていないので予想ですが Edge 自体が Chrome と同じような命令を使えるため、驚くほどの差異はないのではないかと思っています) f:id:x67x6fx74x6f:20160121205721p:plain

 

パフォーマンス

ChakraCore に shim をかぶせているにもかかわらず、
直近の Node.js より速いとのことです。

以下は TypeScript でのコンパイルテストと Node.js ベンチマークの結果で、
テスト環境は Windows 10、Core i5 34755(2.9GHz)、4 GByte のメモリー。

f:id:x67x6fx74x6f:20160121205745p:plain

f:id:x67x6fx74x6f:20160121205754p:plain

 

npm のモジュールについて

npm モジュールの大半は JavaScript ベースですので、大体動くだろうとのこと。
NAN(Native Abstractions for Node.js)の方もサポートするとのことなのでネイティブのモジュールもある程度は動きそうです。

 

ChakraCore のロードマップ

github.com

   

WebAssembly を実装中だったり、
SIMD.js や Exponentiation Operator、Async Functions が使えたりで面白くなりそうですね。

スポンサーリンク