Idea
Project / Compiled UI updates
Compile UI updates ahead of time.
When one state value changes in a React UI, the runtime can rerun components and compare their output to find which DOM changes it needs to apply.
For a UI written in Bosatsu, a typed functional language, Yichus analyzes which elements depend on each state value. For scalar updates, it generates direct bindings. In the counter below, a change to count writes to one element’s text without rerunning the component.
The counter’s compiled binding
count → count-display.textContentConvert the integer to text, then update this element.
You can compare it with React in your browser. The benchmark times how fast each one accepts updates, which is not the same as how fast each finishes drawing, and the numbers depend on your machine.
Code & run Read and run the compiled counter
Follow the update through the system
The interactive compiler explainer shows the counter, its generated code, and the binding used for an update. The benchmark runs generated Yichus code and React’s runtime in the same browser.
This is a rendering experiment, with different paths for scalar updates and changes to the page’s structure. A single benchmark does not establish how an entire application will perform.
All Yichus projects · Work with your agent