HeadlinesBriefing HeadlinesBriefing.com

Bez: Генерация движка браузера из спецификаций и тестов

Hacker News •
×

Bez генерирует движок рендеринга веб-страниц из спецификаций и тестов, а не создаёт его вручную. Проект направлен на снижение стоимости создания движка браузера, который в настоящее время требует сотен инженеров и многих лет работы. Генерируя код из спецификаций и используя три основных браузера (Chromium, Firefox, WebKit) вместе с WPT в качестве тестов, каждый дополнительный движок стоит очень мало.

Цели включают полную или tree-shaken сборку, быструю производительность на любом устройстве, простоту встраивания и самые быстрые обновления при изменении спецификаций. Цикл генерации включает написание кандидатов из текста спецификации, их запуск внутри движка и проверку согласия с тремя браузерами относительно блоков и размещения. Только когда все три согласны, код фиксируется как обычный Rust.

Текущее состояние показывает 0,6% сгенерированных функций в целом, с CSS на 2,5%. Девять правил макета CSS 2.1 находятся в сгенерированном коде; восемь были написаны моделями и приняты против голосования трёх браузеров. 699 из 705 сравнений пар браузеров совпали по 235 документам, причём Firefox был определён как выброс во всех шести разногласиях, что выявило реальную ошибку веб-совместимости.

Источник: Hacker News · Сводку подготовил HeadlinesBriefing