SerenityOS build: Saturday, August 06
Images 💾⌗
- serenity-i686-20220806-64b29eb.vdi.gz (VirtualBox VDI, 127.44 MiB)
- serenity-i686-20220806-64b29eb.img.gz (Raw image, 127.61 MiB)
Last commit ⭐⌗
commit 64b29eb4596976138b2e4f67f8502419e584f1e4
Author: Andreas Kling <kling@serenityos.org>
AuthorDate: Fri Aug 5 23:58:47 2022 +0200
Commit: Andreas Kling <kling@serenityos.org>
CommitDate: Sat Aug 6 00:29:15 2022 +0200
LibJS: Implement string concatenation using ropes
Instead of concatenating string data every time you add two strings
together in JavaScript, we now create a new PrimitiveString that points
to the two concatenated strings instead.
This turns concatenated strings into a tree structure that doesn't have
to be serialized until someone wants the characters in the string.
This *dramatically* reduces the peak memory footprint when running
the SunSpider benchmark (from ~6G to ~1G on my machine). It's also
significantly faster (1.39x) :^)
Other builds