Developer(s) | Opera Software ASA |
---|---|
Stable release | 2.12.423 / 16 March 2015 [1] |
Written in | C++ [2] |
Operating system | Linux (non-free repositories) and Windows |
Type | Application framework, Browser engine |
License | Proprietary |
Website | dev |
Presto was the browser engine of the Opera web browser from the release of Opera 7 on 28 January 2003, until the release of Opera 15 on 2 July 2013, at which time Opera switched to using the Blink engine that was originally created for Chromium. [3] Presto was also used to power the Opera Mini and Opera Mobile browsers.
Presto is a dynamic engine. Web pages can be re-rendered completely or partially in response to DOM events. Its releases saw a number of bug fixes and optimizations to improve the speed of the ECMAScript (JavaScript) engine. It is proprietary and only available as a part of the Opera browsers.
A succession of ECMAScript engines have been used with Opera. (For the origin of their names, see Cultural notes below.) Pre-Presto versions of Opera used the Linear A engine. Opera versions based on the Core fork of Presto, Opera 7.0 through 9.27, used the Linear B engine. [4] The Futhark engine is used in some versions on the Core 2 fork of Presto, namely Opera 9.5 to Opera 10.10. [5] When released it was the fastest engine around, but in 2008 a new generation of ECMAScript engines from Google (V8), Mozilla (SpiderMonkey), and Apple (JavaScriptCore) took one more step, introducing native code generation. This opened up for potential heavy computations on the client side and Futhark, though still fast and efficient, was unable to keep up.[ original research? ]
In early 2009, Opera introduced the Carakan engine. It featured register-based bytecode, native code generation, automatic object classification, and overall performance improvements. [6] [7] Early access in the Opera 10.50 pre-alpha showed that it is as fast as the fastest competitors, being the winner in 2 out of the 3 most used benchmarks. [8]
Presto Version | ECMAScript engine | Browser code name | Opera Browser | Opera Mobile | Other use | New features |
---|---|---|---|---|---|---|
pre Presto | none | unnamed | 3.5 | |||
pre Presto | Linear A | Elektra/unnamed [9] [note 1] | 4.0 | |||
1.0 | Linear B | unnamed | 7.0 | a completely new rendering engine, Favicon support [10] | ||
8.5 | "Bolton" version: 1st completely free download version (ad-free toolbar) | |||||
2.0 | Merlin | 9.0 | Internet Channel [11] | Canvas, Acid2 Test: passed, Rich text editing, XSLT, and XPath | ||
2.1 | Futhark | Kestrel | 9.5 | 9.5 [12] | Nintendo DSi Browser | SVG Tiny 1.2, SVG as CSS, SVG as <img>, Audio object |
2.1.1 | 9.6 | Scope API, [13] SVG as Favicon | ||||
2.2 | Peregrine | 9.7 [14] | ||||
2.2.15 | 10.0 10.1 | 9.8 [15] | Acid3 test: 100/100, pixel-perfect, Web fonts, CSS Selectors API, RGBA & HSLA opacity, TLS 1.2., [16] FPS in SVG, SVG fonts in HTML | |||
2.3 | Opera Devices SDK 10 | CSS3 : border-image, border-radius (rounded corners), box-shadow, transitions; HTML5: <audio> and <video> elements | ||||
2.4 | 10 | CSS2.1: visibility:collapse; CSS3 : transforms; HTML5: <canvas> shadows, Web Database, Web Storage, window.btoa, and window.atob | ||||
2.5.24 | Carakan | Evenes | 10.5 | 10.1 | Opera Mini server | CSS3: multiple backgrounds; HTML5: <canvas> Text |
2.6.30 | 10.6 | WebM; HTML5: AppCache, Geolocation, Web Workers [17] | ||||
2.7.62 | Kjevik | 11.0 | 11.0 | Extensions, WebSocket | ||
2.8.131 | Barracuda | 11.1 | 11.1 | Opera Mini server 4.27 | WebP, File API, CSS3 gradients (only for the background and background-image properties): -o-linear-gradient(), -o-repeating-linear-gradient(); Support for <color-stop> added. | |
2.9.168 | Swordfish | 11.5 | Session history management, classList (DOMTokenList) | |||
2.9.201 | 11.50 for Android | ECMAscript strict mode | ||||
2.10.229 | Tunny | 11.6 | 11.6 | HTML5 Parser, full support to CSS Gradients, Typed Arrays, CSS unit "rem" | ||
2.10.254 | Wahoo | 12.0 | WebGL and hardware acceleration [18] | |||
2.10.289 | 12.0 | |||||
2.11.355 | Marlin | 12.1 for Android | SPDY, CSS3 Flexbox [19] | |||
2.12.388 | 12.10–12.18 |
The source code for version 12.15 was leaked to GitHub on February 11, 2016. [26] It remained unnoticed until January 12, 2017 and was taken down two days later in response to a DMCA request. [27] [28] Opera Software has confirmed the authenticity of the source code. [29]
The ECMAScript engines used with Opera have been named after ancient and traditional writing scripts, including undeciphered Linear A, Ancient Greek Linear B, Runic Futhark, and Javanese Carakan. [6]
Gecko is a browser engine developed by Mozilla. It is used in the Firefox browser, the Thunderbird email client, and many other projects.
ECMAScript is a standard for scripting languages, including JavaScript, JScript, and ActionScript. It is best known as a JavaScript standard intended to ensure the interoperability of web pages across different web browsers. It is standardized by Ecma International in the document ECMA-262.
A browser war is a competition for dominance in the usage share of web browsers. The "first browser war" (1995–2001) consisted of Internet Explorer and Netscape Navigator, and the "second browser war" (2004-2017) between Internet Explorer, Firefox, and Google Chrome.
Opera is a Norwegian multinational technology headquartered in Oslo, Norway with additional offices in Europe, China, and Africa. Opera offers a range of products and services that include a variety of PC and mobile web browsers, GameMaker and gaming portals, the Opera News content recommendation products, the Opera Ads platform, and a number of Web3 and e-commerce products and services. The company's total user base is 311 million monthly active users.
A mobile browser is a web browser designed for use on a mobile device such as a mobile phone, PDA, smartphone, or tablet. Mobile browsers are optimized to display web content most effectively on small screens on portable devices. Some mobile browsers, especially older versions, are designed to be small and efficient to accommodate the low memory capacity and low bandwidth of certain wireless handheld devices. Traditional smaller feature phones use stripped-down mobile web browsers; however, most current smartphones have full-fledged browsers that can handle the latest web technologies, such as CSS 3, JavaScript, and Ajax.
WebKit is a browser engine primarily used in Apple's Safari web browser, as well as all web browsers on iOS and iPadOS. WebKit is also used by the PlayStation consoles starting with the PS3, the Tizen mobile operating systems, the Amazon Kindle e-book reader, Nintendo consoles starting with the 3DS Internet Browser, and the discontinued BlackBerry Browser.
NetFront Browser is a mobile browser developed by Access Company of Japan. The first version shipped in 1995. They currently have several browser variants, both Chromium-based and WebKit-based.
A JavaScript engine is a software component that executes JavaScript code. The first JavaScript engines were mere interpreters, but all relevant modern engines use just-in-time compilation for improved performance.
Opera Mini is a mobile web browser made by Opera. It was primarily designed for the Java ME platform, as a low-end sibling for Opera Mobile, but as of 2022 only the Android build was still under active development. It had previously been developed for iOS, Windows 10 Mobile, Windows Phone 8.1, BlackBerry, Symbian, and Bada.
The history of the Opera web browser began in 1994 when it was started as a research project at Telenor, the largest Norwegian telecommunications company. In 1995, the project branched out into a separate company named Opera Software ASA, with the first publicly available version released in 1996. Opera has undergone extensive changes and improvements, and introduced notable features such as Speed Dial.
Opera Mobile is a mobile web browser for smartphones, tablets and PDAs developed by Opera.
Gears, formerly Google Gears, is a discontinued utility software offered by Google to create more powerful web apps by adding offline storage and other additional features to web browsers. Released under the BSD license, Gears is free and open-source. Gears was conceived at a time when a comparable alternative was not available. However, Gears was discontinued in favor of the standardized HTML5 methods that eventually became prevalent.
The Acid3 test is a web test page from the Web Standards Project that checks a web browser's compliance with elements of various web standards, particularly the Document Object Model (DOM) and JavaScript.
Opera is a multi-platform web browser developed by its namesake company Opera. The current edition of the browser is based on Chromium. Opera is available on Windows, macOS, Linux, Android, and iOS. Two mobile versions are still active, called Opera Mobile and Opera Mini. Opera also has a news aggregator app called Opera News with Aria, an AI-based search engine.
V8 is a JavaScript and WebAssembly engine developed by Google for its Chrome browser. V8 is free and open-source software that is part of the Chromium project and also used separately in non-browser contexts, notably the Node.js runtime system.
A software widget is a relatively simple and easy-to-use software application or component made for one or more different software platforms.
Iris Browser is a discontinued web browser for Windows Mobile smartphones and personal digital assistants (PDAs) developed by the Torch Mobile company. The first version was released in 2008. It was one of the first mobile browsers to score a perfect 100 on the Acid3 test.
The Web Open Font Format (WOFF) is a font format for use in web pages. WOFF files are OpenType or TrueType fonts, with format-specific compression applied and additional XML metadata added. The two primary goals are first to distinguish font files intended for use as web fonts from fonts files intended for use in desktop applications via local installation, and second to reduce web font latency when fonts are transferred from a server to a client over a network connection.