Mozilla’s mission is about advancing the Web as a platform for all. At
Mozilla Research,
we’re supporting this mission by experimenting with what’s next when it
comes to the core technology powering the Web browser. We need to be
prepared to take advantage of tomorrow’s faster, multi-core,
heterogeneous computing architectures. That’s why we’ve recently begun
collaborating with Samsung on an advanced technology Web browser engine
called Servo.
Servo is an attempt to rebuild the Web browser from the ground up on
modern hardware, rethinking old assumptions along the way. This means
addressing the causes of security vulnerabilities while designing a
platform that can fully utilize the performance of tomorrow’s massively
parallel hardware to enable new and richer experiences on the Web. To
those ends, Servo is written in Rust, a new, safe systems language
developed by Mozilla along with a growing community of enthusiasts.
We are now pleased to announce with Samsung that together we are bringing both the Rust programming language and Servo,
the experimental web browser engine, to Android and ARM. This is an
exciting step in the evolution of both projects that will allow us to
start deeper research with Servo on mobile. Samsung has already
contributed an ARM backend to Rust and the build infrastructure
necessary to cross-compile to Android, along with many other
improvements. You can try this now by downloading the code from Github, but it’s just the beginning.
Rust, which today reached v0.6,
has been in development for several years and is rapidly approaching
stability. It is intended to fill many of the same niches that C++ has
over the past decades, with efficient high-level, multi-paradigm
abstractions, and offers precise control over hardware resources. But
beyond that, it is *safe by default*, preventing entire classes of
memory management errors that lead to crashes and security
vulnerabilities. Rust also features lightweight concurrency primitives
that make it easy for programmers to leverage the power of the many CPU
cores available on current and future computing platforms.
In the coming year, we are racing to complete the first major
revision of Rust – cleaning up, expanding and documenting the libraries,
building out our tools to improve the user experience, and beefing up
performance. At the same time, we will be putting more resources into
Servo, trying to prove that we can build a fast web browser with
pervasive parallelism, and in a safe, fun language. We, along with our
friends at Samsung will be increasingly looking at opportunities on
mobile platforms. Both of these efforts are still early stage projects
and there’s a lot to do yet, so now is a good time to get involved.
To take a look at what we’re doing and contribute to the projects you can download and try the recently-released Rust 0.6 or check out the source for
Rust and
Servo on GitHub. Then come participate in the development process on the Rust (
https://mail.mozilla.org/listinfo/rust-dev) and Servo (
https://lists.mozilla.org/listinfo/dev-servo) mailing lists.
- Brendan Eich, CTO, Mozilla