Presto (layout engine)

From Seo Wiki - Search Engine Optimization and Programming Languages
Jump to navigationJump to search

Presto is a layout engine for the Opera web browser developed by Opera Software. After several public betas and technical previews, it was released on January 28, 2003 in Opera 7.0 for Windows; it is the browser's current layout engine. Presto is dynamic: the page or parts of it can be re-rendered in response to DOM and script events. Presto is available only as a part of Opera browser or related products. The source or binary (DLL) forms of the engine are not publicly available. Subsequent releases have seen a number of bugs fixed and optimisations to improve the speed of the ECMAScript ("JavaScript") engine.

JavaScript engines

The "Linear A" is a JavaScript engine used in older versions of Opera. Versions based on the "Core" fork of Presto, Opera 7.0 through 9.27, use the "Linear B" engine[1] The "Futhark" engine is used in some versions on the "Core 2" fork of Presto, namely Opera 9.5 to Opera 10.10[2]. When released it was the fastest engine around, but in 2008 a new generation of JavaScript engines from Google (V8), Mozilla (TraceMonkey) and Apple (SquirrelFish) took one more step, introducing native code generation. Though raw JavaScript performance is of very little meaning in everyday browsing, this opened up for potential heavy computations on the client side and futhark, though still fast and efficient, would not be able to keep up.

In early 2009 Opera presented the next step, Carakan, which will be used in future versions of Opera. It features register-based bytecode, native code generation, automatic object classification and overall performance improvements.[3][4]. Early access in the Opera 10.50 pre-alpha showed that it's as fast as the fastest competitors, being the winner in 2 out of the 3 most used benchmarks[5], though it remains to be seen what the performance of the final version is.

History and development

Presto Version JavaScript engine Browser code name Opera Browser Opera Mobile Other use New features
pre Presto unnamed unnamed 3.5
pre Presto Linear A Electra/unnamed [6] 4.0
1.0 Linear B unnamed 7.0
2.0 Linear B Merlin 9.0 Internet Channel[7] Canvas, Acid2 Test: passed, Rich text editing, XSLT and XPath
2.1 Futhark Kestrel 9.5 9.5[8] SVG Tiny 1.2, SVG as CSS, SVG as <img>, Audio object
2.1.1 Futhark Kestrel 9.6 Scope API[9]
2.2 Futhark Peregrine 9.7[10]
2.2.15 Futhark Peregrine 10[11] 9.8[12] Acid3 test: 100/100, pixel-perfect, Web fonts, CSS Selectors API, RGBA & HSLA opacity, TLS 1.2.[13], FPS in SVG, SVG fonts in HTML
2.3 Futhark Opera Devices SDK 10 CSS3 : border-radius (rounded corners), box-shadow, transitions; HTML5: <audio> and <video> elements
2.4 Futhark 10 CSS3 : transforms; HTML5: SQL storage
2.5 Carakan Evenes 10.50

Presto-based applications

Web browsers

HTML editors

References

  1. Sivonen, Henri (2006-11-23). "Names of Browser Engines". http://hsivonen.iki.fi/engines/. Retrieved 2007-01-03. 
  2. Bointon, Marcus (2006-12-19). "SunSpider Benchmarks: WebKit Rocks". Pet Pixels. http://marcus.bointon.com/archives/50-SunSpider-Benchmarks-WebKit-Rocks.html. Retrieved 2007-01-03. 
  3. Lindström, Jens (2009-02-05). "Carakan - By Opera Core Concerns". Opera Software. http://my.opera.com/core/blog/2009/02/04/carakan. Retrieved 2009-02-05. 
  4. Lindström, Jens (2009-12-22). "Carakan Revisited - By Opera Core Concerns". Opera Software. http://my.opera.com/core/blog/2009/12/22/carakan-revisited. Retrieved 2009-12-26. 
  5. Fulton, Scott M. III (2009-02-22). "The once and future king: Test build of Opera crushes Chrome on Windows 7". betanews. http://www.betanews.com/article/The-once-and-future-king-Test-build-of-Opera-crushes-Chrome-on-Windows-7/1261519843. Retrieved 2009-02-26. 
  6. Opera version history At first Electra was the codename for the Opera 4.0 browser but was later designated as a layout engine name for Opera versions 3.5 through 6
  7. "Opera Dragonfly documentation". Opera Software. http://www.opera.com/dragonfly/documentation/. Retrieved 2009-02-27. 
  8. "Reviewer’s Guide to Opera Mobile 9.5 Beta". Opera Software. http://www.opera.com/press/reviews/mobile/#new. Retrieved 2009-02-27. 
  9. Lawson, Bruce (2008-09-10). "Opera Presto 2.1 - Web standards supported by Opera’s core". Opera Software. http://dev.opera.com/articles/view/presto-2-1-web-standards-supported-by/. Retrieved 2009-02-27. 
  10. Opera Software (2009-03-26). "Opera announces the new Opera Mobile 9.7 at CTIA Wireless 2009 – a server-accelerated full Web experience for smartphones and mobile devices". Press release. http://www.opera.com/press/releases/2009/03/26/. Retrieved 2009-06-11. 
  11. released
  12. Opera Software (2009-06-02). "Opera Software grows in Poland: International Web browser company celebrates the Warsaw office opening". Press release. http://www.opera.com/press/releases/2009/06/02/. Retrieved 2009-06-11. 
  13. Pettersen, Yngve Nysæter (2009-02-25). "New in Opera Presto 2.2: TLS 1.2 Support". Opera Software. http://my.opera.com/core/blog/2009/02/25/new-in-opera-presto-2-2-tls-1-2-support. Retrieved 2009-02-27. 
  14. Opera Software ASA (2006-07-24). "Surf in Bed: Nintendo DS Browser hits Japan". Press release. http://www.opera.com/pressreleases/en/2006/07/24/. Retrieved 2008-11-02. 
  15. Rahul Srinivas and Jon S. von Tetzchner (2008-10-08). "Operating Systems are Less Important: Opera". Techtree. http://www.techtree.com/India/News/Operating_Systems_are_Less_Important_Opera/551-93947-580.html. Retrieved 2009-02-25. 
  16. Opera Software ASA (2006-08-23). "Sony Electronics uses the Opera browser for its new mylo personal communicator". Press release. http://www.opera.com/pressreleases/en/2006/08/23/. Retrieved 2008-11-02. 
  17. Opera Software ASA (2006-12-22). "Play with the Web: Opera browser now available for download on Wii". Press release. http://www.opera.com/pressreleases/en/2006/12/22/. Retrieved 2008-11-02. 
  18. Opera Software ASA (2005-04-04). "Powered by Opera: Opera Integrated with Adobe Creative Suite 2". Press release. http://www.opera.com/pressreleases/en/2005/04/04/index.dml. Retrieved 2008-11-02. 
  19. "Adobe Creative Suite 3 (CS3) uses built-in Opera for rendering engine". 2007-03-28. http://operawatch.com/news/2007/03/adobe-creative-suite-3-cs3-uses-built-in-opera-for-rendering-engine.html. Retrieved 2008-04-20. 
  20. Virtual Mechanics Inc. (2008-11-18). "Design Web Pages for the Desktop and Mobile Devices". Press release. http://www.virtualmechanics.com/company/press1108.html. Retrieved 2008-11-18. 

External links