Skip to content

Architecture

૮༼⚆︿⚆༽つ edited this page Jun 25, 2024 · 20 revisions

Memory Layout

Series

Each datatype are backed by Series. Memory Layout

  • Each bit in NULL byte represent an instance that is nullable.
  • Each bit in UI byte represent an instance that bind into the DOM. This make it possible to build highly optimized ECS system for game physics and <canvas> rendering. This BitSet exist because UI update can prevent fast SIMD operation (cuz it iterate all possible instance and compare the change).
  • Each bit in RG byte represent an instance that is part of reactive graph. This value is set(1) when the instance being read inside effect or computed closure. It back to be unset(0) when: the effect.stop() for that closure, or it's not being read when the effect.run();
  • Each bit in Dirty byte represent an instance that has changed. It only set(1) if [RG or UI] bit is set while the instance value change.

Module

Collection of Series. Some people call it Table.

<img?

Clone this wiki locally