Carakan
Opera新的JavaScript引擎“Carakan”[1],目前速度是其他已存在JavaScript引擎(基于SunSpider)的2.5倍。其在转化为本地机器代码时专门针对正则表达式做了优化(有意思的是,Chrome浏览器也刚刚宣布了此点)。
具有的优点
1.基于寄存器的字节码。之前的引擎“ECMAScript”使用的是基于堆栈字节码指令集。这种基于对堆栈存取的方法对于生成字节码是比较简单的。
在新的引擎里,我们采用了基于寄存器的字节码指令集。这种方式采用了固定大小的寄存器,每次操作都可以访问任意的寄存器,更少的指令被执行并且不会拷贝大量的数据。
2.本地代码生成。我们将整个或部分“ECMAScript”引擎编译到本地代码中以达到更快的执行速度。
3.自动对象分类。在新的引擎中每个对象都是被封装成类以存取不同的数据,这些类的划分是与原型保持一致的。