Each tab has its own thread, and these threads are scheduled and controlled by Firefox itself, giving the browser the ability to slow down-or even suspend entirely-background execution, ensuring that the foreground tab never suffers from, say, jerky animations just because of something that a background tab is doing. The main focus of Quantum DOM is to improve the behavior with background tabs.
Quantum DOM and Quantum Flow are both improvements to existing subsystems rather than full rewrites, and, as such, they remain written in C++. In integrating Stylo and WebRender into Firefox, much larger and more significant parts of the browser now use the new language.
Small pieces of Rust code have been in Firefox since version 48. Stylo and WebRender, are both written in Rust. These features should, in principle, make Rust programs much more robust: the compiler itself prevents many of the bugs that might otherwise occur in C++. But the language has much more explicit, strict control over object and memory ownership, ensuring that programmers can't easily write programs that, for example, attempt to simultaneously modify the same data in multiple threads. Like C++ (which most of Firefox continues to use), Rust compiles to native code and so offers low overhead and good performance. Mozilla recognized that complex multithreaded code posed challenges for developers some years ago and, in response, embarked on the development of the Rust programming language. The Firefox Developer Edition logo shows a rather blue firefox. There's also a new tab page that adds recommended stories to the usual list of your most-visited sites. The current curvy tabs were met with outrage on their introduction in 2014, so the reversion to square tabs will, frankly, probably be met with outrage, but the look is clean and precise. The new user interface, named Photon, brings with it square tabs and a much more conventional main menu. The developer edition is used by a few hundred thousand users each month and is for the most part identical to the beta, except it has a different theme by default-a dark theme instead of the normal light one-and changes a few default settings in ways that developers tend to prefer. In April, Mozilla scrapped the Aurora channel, and the developer edition moved to being based on the beta channel. The old Firefox developer edition was based on the alpha-quality Aurora channel, which was two versions ahead of the stable version. Today, that work takes a big step toward the mainstream with the release of the new Firefox 57 developer edition. Earlier this year we wrote about Project Quantum, Mozilla's work to modernize Firefox and rebuild it to handle the needs of the modern Web.