Images 💾

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) :^)