Skip to content

V0.2 - a whole rewrite#1

Merged
WebReflection merged 7 commits into
mainfrom
v0.2
May 28, 2026
Merged

V0.2 - a whole rewrite#1
WebReflection merged 7 commits into
mainfrom
v0.2

Conversation

@WebReflection
Copy link
Copy Markdown
Owner

I wasn't particularly happy with the performance in v8 (vs jsc) so I decided to give classes a chance, instead of using the good old closure + objects literal style ...

pros

  • performance now is better than @preact/signals core on both Bun and NodeJS
  • no more clean files, everything is wrapped within a single file (except disposable) to avoid cyclic dependencies and whatnot
  • Signal is now a class and so is Computed, which extends Signal without leaking, yet reusing, private fields (read more about protected properties)

cons

  • the size is slightly bigger (75 bytes or something ... I guess we can live with it)
  • it's less elegant and clean than before, yet the logic is really simple so it shouldn't be a maintenance issue/burden

Because I think perf win matters, and because RAM requirements are now way lower than before, I think I am going for this v0.2.0.

Screenshot From 2026-05-28 13-38-47

@WebReflection WebReflection merged commit 80cba0d into main May 28, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant