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