Developer(s) | The Chromium Project |
---|---|
Initial release | September 2, 2008 |
Stable release |
6.0 / June 9, 2017
|
Repository | github |
Development status | Active |
Written in | C++,JavaScript |
Operating system | Cross-platform |
Platform | IA-32, x86-64, ARM, MIPS,PowerPC, IBM s390 |
Type | JavaScript engine |
License | BSD |
Website | developers |
Chrome V8, or simply V8, is an open source JavaScript engine developed by The Chromium Project for the Google Chrome web browser. It has been used in many other projects, such as Couchbase, MongoDB and Node.js that are used server-side. The project’s creator is Lars Bak. The first version of the V8 engine was released at the same time as the first version of Chrome: September 2, 2008.
V8 compiles JavaScript directly to native machine code before executing it, instead of more traditional techniques such as interpreting bytecode or compiling the whole program to machine code and executing it from a filesystem. The compiled code is additionally optimized (and re-optimized) dynamically at runtime, based on heuristics of the code's execution profile. Optimization techniques used include inlining, elision of expensive runtime properties, and inline caching, among many others.
V8 can compile to IA-32, x86-64, ARM, or MIPS ISAs; it has also been ported to PowerPC and IBM s390 for use in servers.
The garbage collector of V8 is a generational incremental collector. The V8 assembler is based on the Strongtalk assembler. On 7 December 2010, a new compiling infrastructure named Crankshaft was released, with speed improvements.