Skip to content
Servo's Navigation Design
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Servo Navigation Proposal

This repo contains notes on the design of Servo's navigation model.

The full document is notes.pdf, and includes:

  • A navigation history model based on the WHATWG specification.
  • A series of counter-examples showing unexpected behaviour of the WHATWG model.
  • A series of patches for each of the counter-examples.
  • A proof (mechanized in Agda) that the patched model satisfies the fundamental property: that traversing the session history by δ then by δ′ is the same as traversing by (δ + δ′).
  • Experimental evidence that browser implementations are closer to the patched model than to the original.

The implementation in Servo is part of the constellation.

Creative Commons License This work is licensed under a Creative Commons Attribution 4.0 International License.

You can’t perform that action at this time.